diff options
| author | Jacques Pienaar <jpienaar@google.com> | 2016-05-20 03:21:37 +0000 |
|---|---|---|
| committer | Jacques Pienaar <jpienaar@google.com> | 2016-05-20 03:21:37 +0000 |
| commit | 813e83734d1dae91c29ad191d73604f9ac3a347f (patch) | |
| tree | 4369a688863cb9f39a3a32aad0daa6d0c562f135 /llvm/lib/Target/Lanai | |
| parent | 565463fbba62f98914c405b6f2338b99e2c88c4e (diff) | |
| download | bcm5719-llvm-813e83734d1dae91c29ad191d73604f9ac3a347f.tar.gz bcm5719-llvm-813e83734d1dae91c29ad191d73604f9ac3a347f.zip | |
[lanai] Use Optional<Reloc> in LanaiTargetMachine.
Follow r269988 and use Optional<Reloc>.
llvm-svn: 270176
Diffstat (limited to 'llvm/lib/Target/Lanai')
| -rw-r--r-- | llvm/lib/Target/Lanai/LanaiSubtarget.cpp | 1 | ||||
| -rw-r--r-- | llvm/lib/Target/Lanai/LanaiSubtarget.h | 4 | ||||
| -rw-r--r-- | llvm/lib/Target/Lanai/LanaiTargetMachine.cpp | 21 | ||||
| -rw-r--r-- | llvm/lib/Target/Lanai/LanaiTargetMachine.h | 3 |
4 files changed, 17 insertions, 12 deletions
diff --git a/llvm/lib/Target/Lanai/LanaiSubtarget.cpp b/llvm/lib/Target/Lanai/LanaiSubtarget.cpp index 98b93401631..bfe07170050 100644 --- a/llvm/lib/Target/Lanai/LanaiSubtarget.cpp +++ b/llvm/lib/Target/Lanai/LanaiSubtarget.cpp @@ -40,7 +40,6 @@ LanaiSubtarget &LanaiSubtarget::initializeSubtargetDependencies(StringRef CPU, LanaiSubtarget::LanaiSubtarget(const Triple &TargetTriple, StringRef Cpu, StringRef FeatureString, const TargetMachine &TM, const TargetOptions &Options, - Reloc::Model RelocationModel, CodeModel::Model CodeModel, CodeGenOpt::Level OptLevel) : LanaiGenSubtargetInfo(TargetTriple, Cpu, FeatureString), diff --git a/llvm/lib/Target/Lanai/LanaiSubtarget.h b/llvm/lib/Target/Lanai/LanaiSubtarget.h index f50347682e2..2732ef3097e 100644 --- a/llvm/lib/Target/Lanai/LanaiSubtarget.h +++ b/llvm/lib/Target/Lanai/LanaiSubtarget.h @@ -34,8 +34,8 @@ public: // of the specified triple. LanaiSubtarget(const Triple &TargetTriple, StringRef Cpu, StringRef FeatureString, const TargetMachine &TM, - const TargetOptions &Options, Reloc::Model RelocationModel, - CodeModel::Model CodeModel, CodeGenOpt::Level OptLevel); + const TargetOptions &Options, CodeModel::Model CodeModel, + CodeGenOpt::Level OptLevel); // ParseSubtargetFeatures - Parses features string setting specified // subtarget options. Definition of function is auto generated by tblgen. diff --git a/llvm/lib/Target/Lanai/LanaiTargetMachine.cpp b/llvm/lib/Target/Lanai/LanaiTargetMachine.cpp index f89464826b3..bb418f3110c 100644 --- a/llvm/lib/Target/Lanai/LanaiTargetMachine.cpp +++ b/llvm/lib/Target/Lanai/LanaiTargetMachine.cpp @@ -47,18 +47,23 @@ static std::string computeDataLayout(const Triple &TT) { "-S64"; // 64 bit natural stack alignment } -LanaiTargetMachine::LanaiTargetMachine(const Target &TheTarget, - const Triple &TargetTriple, +static Reloc::Model getEffectiveRelocModel(const Triple &TT, + Optional<Reloc::Model> RM) { + if (!RM.hasValue()) + return Reloc::Static; + return *RM; +} + +LanaiTargetMachine::LanaiTargetMachine(const Target &T, const Triple &TT, StringRef Cpu, StringRef FeatureString, const TargetOptions &Options, - Reloc::Model RelocationModel, + Optional<Reloc::Model> RM, CodeModel::Model CodeModel, CodeGenOpt::Level OptLevel) - : LLVMTargetMachine(TheTarget, computeDataLayout(TargetTriple), - TargetTriple, Cpu, FeatureString, Options, - RelocationModel, CodeModel, OptLevel), - Subtarget(TargetTriple, Cpu, FeatureString, *this, Options, - RelocationModel, CodeModel, OptLevel), + : LLVMTargetMachine(T, computeDataLayout(TargetTriple), TT, Cpu, + FeatureString, Options, getEffectiveRelocModel(TT, RM), + CodeModel, OptLevel), + Subtarget(TT, Cpu, FeatureString, *this, Options, CodeModel, OptLevel), TLOF(new LanaiTargetObjectFile()) { initAsmInfo(); } diff --git a/llvm/lib/Target/Lanai/LanaiTargetMachine.h b/llvm/lib/Target/Lanai/LanaiTargetMachine.h index 9c911768e30..1f616085cdb 100644 --- a/llvm/lib/Target/Lanai/LanaiTargetMachine.h +++ b/llvm/lib/Target/Lanai/LanaiTargetMachine.h @@ -32,7 +32,8 @@ class LanaiTargetMachine : public LLVMTargetMachine { public: LanaiTargetMachine(const Target &TheTarget, const Triple &TargetTriple, StringRef Cpu, StringRef FeatureString, - const TargetOptions &Options, Reloc::Model RelocationModel, + const TargetOptions &Options, + Optional<Reloc::Model> RelocationModel, CodeModel::Model CodeModel, CodeGenOpt::Level OptLevel); const LanaiSubtarget * |

