Skip to content

Commit

Permalink
[AArch64] Consistent types and naming for AArch64 target features (NFC)
Browse files Browse the repository at this point in the history
Differential Revision: https://reviews.llvm.org/D64415

Committed as obvious.

llvm-svn: 366315
  • Loading branch information
momchil-velikov committed Jul 17, 2019
1 parent 8b7041a commit e14cfe2
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 24 deletions.
34 changes: 17 additions & 17 deletions clang/lib/Basic/Targets/AArch64.cpp
Expand Up @@ -199,13 +199,13 @@ void AArch64TargetInfo::getTargetDefines(const LangOptions &Opts,
if (FPU & SveMode)
Builder.defineMacro("__ARM_FEATURE_SVE", "1");

if (CRC)
if (HasCRC)
Builder.defineMacro("__ARM_FEATURE_CRC32", "1");

if (Crypto)
if (HasCrypto)
Builder.defineMacro("__ARM_FEATURE_CRYPTO", "1");

if (Unaligned)
if (HasUnaligned)
Builder.defineMacro("__ARM_FEATURE_UNALIGNED", "1");

if ((FPU & NeonMode) && HasFullFP16)
Expand Down Expand Up @@ -263,13 +263,13 @@ bool AArch64TargetInfo::hasFeature(StringRef Feature) const {
bool AArch64TargetInfo::handleTargetFeatures(std::vector<std::string> &Features,
DiagnosticsEngine &Diags) {
FPU = FPUMode;
CRC = 0;
Crypto = 0;
Unaligned = 1;
HasFullFP16 = 0;
HasDotProd = 0;
HasFP16FML = 0;
HasMTE = 0;
HasCRC = false;
HasCrypto = false;
HasUnaligned = true;
HasFullFP16 = false;
HasDotProd = false;
HasFP16FML = false;
HasMTE = false;
ArchKind = llvm::AArch64::ArchKind::ARMV8A;

for (const auto &Feature : Features) {
Expand All @@ -278,11 +278,11 @@ bool AArch64TargetInfo::handleTargetFeatures(std::vector<std::string> &Features,
if (Feature == "+sve")
FPU |= SveMode;
if (Feature == "+crc")
CRC = 1;
HasCRC = true;
if (Feature == "+crypto")
Crypto = 1;
HasCrypto = true;
if (Feature == "+strict-align")
Unaligned = 0;
HasUnaligned = false;
if (Feature == "+v8.1a")
ArchKind = llvm::AArch64::ArchKind::ARMV8_1A;
if (Feature == "+v8.2a")
Expand All @@ -294,13 +294,13 @@ bool AArch64TargetInfo::handleTargetFeatures(std::vector<std::string> &Features,
if (Feature == "+v8.5a")
ArchKind = llvm::AArch64::ArchKind::ARMV8_5A;
if (Feature == "+fullfp16")
HasFullFP16 = 1;
HasFullFP16 = true;
if (Feature == "+dotprod")
HasDotProd = 1;
HasDotProd = true;
if (Feature == "+fp16fml")
HasFP16FML = 1;
HasFP16FML = true;
if (Feature == "+mte")
HasMTE = 1;
HasMTE = true;
}

setDataLayout();
Expand Down
15 changes: 8 additions & 7 deletions clang/lib/Basic/Targets/AArch64.h
Expand Up @@ -28,13 +28,14 @@ class LLVM_LIBRARY_VISIBILITY AArch64TargetInfo : public TargetInfo {
enum FPUModeEnum { FPUMode, NeonMode = (1 << 0), SveMode = (1 << 1) };

unsigned FPU;
unsigned CRC;
unsigned Crypto;
unsigned Unaligned;
unsigned HasFullFP16;
unsigned HasDotProd;
unsigned HasFP16FML;
unsigned HasMTE;
bool HasCRC;
bool HasCrypto;
bool HasUnaligned;
bool HasFullFP16;
bool HasDotProd;
bool HasFP16FML;
bool HasMTE;

llvm::AArch64::ArchKind ArchKind;

static const Builtin::Info BuiltinInfo[];
Expand Down

0 comments on commit e14cfe2

Please sign in to comment.