diff options
| author | Oliver Stannard <oliver.stannard@arm.com> | 2019-02-18 12:39:47 +0000 |
|---|---|---|
| committer | Oliver Stannard <oliver.stannard@arm.com> | 2019-02-18 12:39:47 +0000 |
| commit | e3c8ce8b7547bea03fe4c9271c46c09e11fd4443 (patch) | |
| tree | 8cf3f61f4253026833f1e7778c06e3d6c86244dd /clang/lib/Basic/Targets/ARM.cpp | |
| parent | 6e0b562bf6e0e94e3ea6a755a9917b2725fd604d (diff) | |
| download | bcm5719-llvm-e3c8ce8b7547bea03fe4c9271c46c09e11fd4443.tar.gz bcm5719-llvm-e3c8ce8b7547bea03fe4c9271c46c09e11fd4443.zip | |
[ARM] Add pre-defined macros for ROPI and RWPI
This adds ACLE-defined macros to test for code being compiled in the ROPI and
RWPI position-independence modes.
Differential revision: https://reviews.llvm.org/D23610
llvm-svn: 354265
Diffstat (limited to 'clang/lib/Basic/Targets/ARM.cpp')
| -rw-r--r-- | clang/lib/Basic/Targets/ARM.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/clang/lib/Basic/Targets/ARM.cpp b/clang/lib/Basic/Targets/ARM.cpp index f0ebfdd5f71..61a520bd5e0 100644 --- a/clang/lib/Basic/Targets/ARM.cpp +++ b/clang/lib/Basic/Targets/ARM.cpp @@ -652,6 +652,12 @@ void ARMTargetInfo::getTargetDefines(const LangOptions &Opts, if (SoftFloat) Builder.defineMacro("__SOFTFP__"); + // ACLE position independent code macros. + if (Opts.ROPI) + Builder.defineMacro("__ARM_ROPI", "1"); + if (Opts.RWPI) + Builder.defineMacro("__ARM_RWPI", "1"); + if (ArchKind == llvm::ARM::ArchKind::XSCALE) Builder.defineMacro("__XSCALE__"); |

