Author: Jon Roelofs Date: 2020-09-17T12:13:57-07:00 New Revision: c145a1ca2593e3b8b79687d5ba8c3230c41b5130
URL: https://github.com/llvm/llvm-project/commit/c145a1ca2593e3b8b79687d5ba8c3230c41b5130 DIFF: https://github.com/llvm/llvm-project/commit/c145a1ca2593e3b8b79687d5ba8c3230c41b5130.diff LOG: AArch64::ArchKind's underlying type is uint64_t Added: Modified: clang/lib/Driver/ToolChains/Arch/AArch64.cpp llvm/include/llvm/Support/AArch64TargetParser.h llvm/lib/Support/AArch64TargetParser.cpp llvm/unittests/Support/TargetParserTest.cpp Removed: ################################################################################ diff --git a/clang/lib/Driver/ToolChains/Arch/AArch64.cpp b/clang/lib/Driver/ToolChains/Arch/AArch64.cpp index ce7c5348a4d5..6c5e43704cc4 100644 --- a/clang/lib/Driver/ToolChains/Arch/AArch64.cpp +++ b/clang/lib/Driver/ToolChains/Arch/AArch64.cpp @@ -94,7 +94,7 @@ static bool DecodeAArch64Mcpu(const Driver &D, StringRef Mcpu, StringRef &CPU, if (!llvm::AArch64::getArchFeatures(ArchKind, Features)) return false; - unsigned Extension = llvm::AArch64::getDefaultExtensions(CPU, ArchKind); + uint64_t Extension = llvm::AArch64::getDefaultExtensions(CPU, ArchKind); if (!llvm::AArch64::getExtensionFeatures(Extension, Features)) return false; } diff --git a/llvm/include/llvm/Support/AArch64TargetParser.h b/llvm/include/llvm/Support/AArch64TargetParser.h index b045e31bc92a..007a9ed867ce 100644 --- a/llvm/include/llvm/Support/AArch64TargetParser.h +++ b/llvm/include/llvm/Support/AArch64TargetParser.h @@ -104,7 +104,7 @@ const ArchKind ArchKinds[] = { }; // FIXME: These should be moved to TargetTuple once it exists -bool getExtensionFeatures(unsigned Extensions, +bool getExtensionFeatures(uint64_t Extensions, std::vector<StringRef> &Features); bool getArchFeatures(ArchKind AK, std::vector<StringRef> &Features); @@ -117,7 +117,7 @@ StringRef getArchExtFeature(StringRef ArchExt); // Information by Name unsigned getDefaultFPU(StringRef CPU, ArchKind AK); -unsigned getDefaultExtensions(StringRef CPU, ArchKind AK); +uint64_t getDefaultExtensions(StringRef CPU, ArchKind AK); StringRef getDefaultCPU(StringRef Arch); ArchKind getCPUArchKind(StringRef CPU); diff --git a/llvm/lib/Support/AArch64TargetParser.cpp b/llvm/lib/Support/AArch64TargetParser.cpp index a6de44605675..82f770766d9b 100644 --- a/llvm/lib/Support/AArch64TargetParser.cpp +++ b/llvm/lib/Support/AArch64TargetParser.cpp @@ -35,11 +35,11 @@ unsigned AArch64::getDefaultFPU(StringRef CPU, AArch64::ArchKind AK) { .Default(ARM::FK_INVALID); } -unsigned AArch64::getDefaultExtensions(StringRef CPU, AArch64::ArchKind AK) { +uint64_t AArch64::getDefaultExtensions(StringRef CPU, AArch64::ArchKind AK) { if (CPU == "generic") return AArch64ARCHNames[static_cast<unsigned>(AK)].ArchBaseExtensions; - return StringSwitch<unsigned>(CPU) + return StringSwitch<uint64_t>(CPU) #define AARCH64_CPU_NAME(NAME, ID, DEFAULT_FPU, IS_DEFAULT, DEFAULT_EXT) \ .Case(NAME, AArch64ARCHNames[static_cast<unsigned>(ArchKind::ID)] \ .ArchBaseExtensions | \ @@ -59,7 +59,7 @@ AArch64::ArchKind AArch64::getCPUArchKind(StringRef CPU) { .Default(ArchKind::INVALID); } -bool AArch64::getExtensionFeatures(unsigned Extensions, +bool AArch64::getExtensionFeatures(uint64_t Extensions, std::vector<StringRef> &Features) { if (Extensions == AArch64::AEK_INVALID) return false; diff --git a/llvm/unittests/Support/TargetParserTest.cpp b/llvm/unittests/Support/TargetParserTest.cpp index f9392751de4e..bec8a395f558 100644 --- a/llvm/unittests/Support/TargetParserTest.cpp +++ b/llvm/unittests/Support/TargetParserTest.cpp @@ -782,12 +782,12 @@ TEST(TargetParserTest, ARMparseArchVersion) { } bool testAArch64CPU(StringRef CPUName, StringRef ExpectedArch, - StringRef ExpectedFPU, unsigned ExpectedFlags, + StringRef ExpectedFPU, uint64_t ExpectedFlags, StringRef CPUAttr) { AArch64::ArchKind AK = AArch64::parseCPUArch(CPUName); bool pass = AArch64::getArchName(AK).equals(ExpectedArch); - unsigned ExtKind = AArch64::getDefaultExtensions(CPUName, AK); + uint64_t ExtKind = AArch64::getDefaultExtensions(CPUName, AK); if (ExtKind > 1 && (ExtKind & AArch64::AEK_NONE)) pass &= ((ExtKind ^ AArch64::AEK_NONE) == ExpectedFlags); else @@ -1201,7 +1201,7 @@ TEST(TargetParserTest, testAArch64Extension) { } TEST(TargetParserTest, AArch64ExtensionFeatures) { - std::vector<unsigned> Extensions = { + std::vector<uint64_t> Extensions = { AArch64::AEK_CRC, AArch64::AEK_CRYPTO, AArch64::AEK_FP, AArch64::AEK_SIMD, AArch64::AEK_FP16, AArch64::AEK_PROFILE, @@ -1214,7 +1214,7 @@ TEST(TargetParserTest, AArch64ExtensionFeatures) { std::vector<StringRef> Features; - unsigned ExtVal = 0; + uint64_t ExtVal = 0; for (auto Ext : Extensions) ExtVal |= Ext; _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits