Skip to content

Commit 218b77c

Browse files
[AArch64][NFC] Move hasFeature fields initiations to the declaration
hasFeature fields need to be initialised to false. Easy to miss as missed for hasPAuth and hasFlagM. Maybe the code less error prone like this. Reviewed By: chill Differential Revision: https://reviews.llvm.org/D139622
1 parent cc1e2bb commit 218b77c

File tree

2 files changed

+30
-61
lines changed

2 files changed

+30
-61
lines changed

clang/lib/Basic/Targets/AArch64.cpp

Lines changed: 0 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -579,37 +579,6 @@ void AArch64TargetInfo::setFeatureEnabled(llvm::StringMap<bool> &Features,
579579

580580
bool AArch64TargetInfo::handleTargetFeatures(std::vector<std::string> &Features,
581581
DiagnosticsEngine &Diags) {
582-
FPU = FPUMode;
583-
HasCRC = false;
584-
HasAES = false;
585-
HasSHA2 = false;
586-
HasSHA3 = false;
587-
HasSM4 = false;
588-
HasUnaligned = true;
589-
HasFullFP16 = false;
590-
HasDotProd = false;
591-
HasFP16FML = false;
592-
HasMTE = false;
593-
HasTME = false;
594-
HasLS64 = false;
595-
HasRandGen = false;
596-
HasMatMul = false;
597-
HasBFloat16 = false;
598-
HasSVE2 = false;
599-
HasSVE2AES = false;
600-
HasSVE2SHA3 = false;
601-
HasSVE2SM4 = false;
602-
HasSVE2BitPerm = false;
603-
HasMatmulFP64 = false;
604-
HasMatmulFP32 = false;
605-
HasLSE = false;
606-
HasMOPS = false;
607-
HasD128 = false;
608-
HasRCPC = false;
609-
HasPAuth = false;
610-
611-
ArchKind = llvm::AArch64::ArchKind::INVALID;
612-
613582
for (const auto &Feature : Features) {
614583
if (Feature == "+neon")
615584
FPU |= NeonMode;

clang/lib/Basic/Targets/AArch64.h

Lines changed: 30 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -27,36 +27,36 @@ class LLVM_LIBRARY_VISIBILITY AArch64TargetInfo : public TargetInfo {
2727

2828
enum FPUModeEnum { FPUMode, NeonMode = (1 << 0), SveMode = (1 << 1) };
2929

30-
unsigned FPU;
31-
bool HasCRC;
32-
bool HasAES;
33-
bool HasSHA2;
34-
bool HasSHA3;
35-
bool HasSM4;
36-
bool HasUnaligned;
37-
bool HasFullFP16;
38-
bool HasDotProd;
39-
bool HasFP16FML;
40-
bool HasMTE;
41-
bool HasTME;
42-
bool HasPAuth;
43-
bool HasLS64;
44-
bool HasRandGen;
45-
bool HasMatMul;
46-
bool HasSVE2;
47-
bool HasSVE2AES;
48-
bool HasSVE2SHA3;
49-
bool HasSVE2SM4;
50-
bool HasSVE2BitPerm;
51-
bool HasMatmulFP64;
52-
bool HasMatmulFP32;
53-
bool HasLSE;
54-
bool HasFlagM;
55-
bool HasMOPS;
56-
bool HasD128;
57-
bool HasRCPC;
58-
59-
llvm::AArch64::ArchKind ArchKind;
30+
unsigned FPU = FPUMode;
31+
bool HasCRC = false;
32+
bool HasAES = false;
33+
bool HasSHA2 = false;
34+
bool HasSHA3 = false;
35+
bool HasSM4 = false;
36+
bool HasUnaligned = true;
37+
bool HasFullFP16 = false;
38+
bool HasDotProd = false;
39+
bool HasFP16FML = false;
40+
bool HasMTE = false;
41+
bool HasTME = false;
42+
bool HasPAuth = false;
43+
bool HasLS64 = false;
44+
bool HasRandGen = false;
45+
bool HasMatMul = false;
46+
bool HasSVE2 = false;
47+
bool HasSVE2AES = false;
48+
bool HasSVE2SHA3 = false;
49+
bool HasSVE2SM4 = false;
50+
bool HasSVE2BitPerm = false;
51+
bool HasMatmulFP64 = false;
52+
bool HasMatmulFP32 = false;
53+
bool HasLSE = false;
54+
bool HasFlagM = false;
55+
bool HasMOPS = false;
56+
bool HasD128 = false;
57+
bool HasRCPC = false;
58+
59+
llvm::AArch64::ArchKind ArchKind = llvm::AArch64::ArchKind::INVALID;
6060

6161
static const Builtin::Info BuiltinInfo[];
6262

0 commit comments

Comments
 (0)