aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorPavel Kosov <kpdev42@gmail.com>2023-06-07 16:05:46 +0300
committerPavel Kosov <kpdev42@gmail.com>2023-06-07 18:23:21 +0300
commit671ea052fbc1a147b4433633cf72caef8e7857a4 (patch)
tree9caecf5c6ebcfe1cbf34530e9e1c4488bf26f6da /clang/lib/Frontend/CompilerInvocation.cpp
parent926e51c1370c711946e4b04101008773ea9d2052 (diff)
downloadllvm-671ea052fbc1a147b4433633cf72caef8e7857a4.zip
llvm-671ea052fbc1a147b4433633cf72caef8e7857a4.tar.gz
llvm-671ea052fbc1a147b4433633cf72caef8e7857a4.tar.bz2
[TableGen] Emit separate computeRequiredFeatures() function
A function is already emitted in *GenInstrInfo.inc that takes Opcode number and a set of supported Features and reports fatal error if some of the required features are missing. The information about features required by the particular opcode can be reused by llvm-exegesis, so move its computation info a separate computeRequiredFeatures() function. Then verifyInstructionPredicates() can just compare the sets of available and required features computed by the other functions. This commit moves the definition of FeatureBitsets[] as well as CEFBS_* enumerator values (that are indices into FeatureBitsets[] array) inside the computeRequiredFeatures() function because these are implementation details of that function. The inclusion of potentially huge computeRequiredFeatures() function is now controlled by a dedicated macro that is set for simplicity by TableGen-erated code itself if `defined(ENABLE_INSTR_PREDICATE_VERIFIER) && !defined(NDEBUG)`. ~~ Huawei RRI, OS Lab Reviewed By: courbet Differential Revision: https://reviews.llvm.org/D148516
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions