diff options
author | Bradley Smith <bradley.smith@arm.com> | 2016-01-15 10:23:46 +0000 |
---|---|---|
committer | Bradley Smith <bradley.smith@arm.com> | 2016-01-15 10:23:46 +0000 |
commit | 4c21cba72bc51e8f5b16efd6c2d9ca7ff88886f4 (patch) | |
tree | 4f1041ceaa5ea73a0d5b9a9dc6eeb4c8af4ab893 /llvm/lib/Target/ARM/ARMSubtarget.h | |
parent | cff8550121f37ac8b97eafb69960c71d4fed03d1 (diff) | |
download | bcm5719-llvm-4c21cba72bc51e8f5b16efd6c2d9ca7ff88886f4.tar.gz bcm5719-llvm-4c21cba72bc51e8f5b16efd6c2d9ca7ff88886f4.zip |
[ARM] Split out ARMv8-A semaphores and atomics and ARMv7 clrex as separate features
llvm-svn: 257877
Diffstat (limited to 'llvm/lib/Target/ARM/ARMSubtarget.h')
-rw-r--r-- | llvm/lib/Target/ARM/ARMSubtarget.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/llvm/lib/Target/ARM/ARMSubtarget.h b/llvm/lib/Target/ARM/ARMSubtarget.h index 4d54e575147..7b551cd84ee 100644 --- a/llvm/lib/Target/ARM/ARMSubtarget.h +++ b/llvm/lib/Target/ARM/ARMSubtarget.h @@ -155,6 +155,13 @@ protected: /// instructions. bool HasDataBarrier; + /// HasV7Clrex - True if the subtarget supports CLREX instructions + bool HasV7Clrex; + + /// HasAcquireRelease - True if the subtarget supports v8 atomics (LDA/LDAEX etc) + /// instructions + bool HasAcquireRelease; + /// Pref32BitThumb - If true, codegen would prefer 32-bit Thumb instructions /// over 16-bit ones. bool Pref32BitThumb; @@ -343,6 +350,8 @@ public: bool hasDivideInARMMode() const { return HasHardwareDivideInARM; } bool hasT2ExtractPack() const { return HasT2ExtractPack; } bool hasDataBarrier() const { return HasDataBarrier; } + bool hasV7Clrex() const { return HasV7Clrex; } + bool hasAcquireRelease() const { return HasAcquireRelease; } bool hasAnyDataBarrier() const { return HasDataBarrier || (hasV6Ops() && !isThumb()); } |