[RISCV] Make RISCVISAInfo::toFeatureVector ignore unsupported extensions
authorAlex Bradbury <asb@igalia.com>
Sun, 26 Mar 2023 14:50:13 +0000 (15:50 +0100)
committerAlex Bradbury <asb@igalia.com>
Sun, 26 Mar 2023 14:51:38 +0000 (15:51 +0100)
commitaf602edf0ecb4e1d7de4ccce8ebe1be8bb53443d
treee084ae10a22396ef1ce6ac424f338922ddc25a81
parentf5b6e9b6d355866c2aa4e440438b870885ec0373
[RISCV] Make RISCVISAInfo::toFeatureVector ignore unsupported extensions

parseNormalizedArchString adds a code path that creates a RISCVISAInfo
including extensions that may not be supported by LLVM (rather than
erroring or just ignoring them). Therefore, toFeatureVector needs to
check the extension is supported in order to avoid creating unrecognised
feature strings.

This change shouldn't impact any code paths used outside of test code,
but this will be relied upon by the next patch which moves llvm-objdump
and related tools over to using parseNormalizedArchString.

Differential Revision: https://reviews.llvm.org/D146113
llvm/lib/Support/RISCVISAInfo.cpp
llvm/unittests/Support/RISCVISAInfoTest.cpp