aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Target/SystemZ
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2009-08-02 22:11:08 +0000
committerDaniel Dunbar <daniel@zuster.org>2009-08-02 22:11:08 +0000
commit3be03406c9c3b2075d5ae416499af2f15f703d6f (patch)
treec44ecdea2343ba2b7689ee79d2e599483a48a4ac /lib/Target/SystemZ
parent1391cc19d0d0dec015bfc0130e4238cacd19fbf2 (diff)
downloadexternal_llvm-3be03406c9c3b2075d5ae416499af2f15f703d6f.zip
external_llvm-3be03406c9c3b2075d5ae416499af2f15f703d6f.tar.gz
external_llvm-3be03406c9c3b2075d5ae416499af2f15f703d6f.tar.bz2
Normalize Subtarget constructors to take a target triple string instead of
Module*. Also, dropped uses of TargetMachine where unnecessary. The only target which still takes a TargetMachine& is Mips, I would appreciate it if someone would normalize this to match other targets. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77918 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/SystemZ')
-rw-r--r--lib/Target/SystemZ/SystemZSubtarget.cpp2
-rw-r--r--lib/Target/SystemZ/SystemZSubtarget.h8
-rw-r--r--lib/Target/SystemZ/SystemZTargetMachine.cpp2
3 files changed, 5 insertions, 7 deletions
diff --git a/lib/Target/SystemZ/SystemZSubtarget.cpp b/lib/Target/SystemZ/SystemZSubtarget.cpp
index 18a8e16..a8b5e1f 100644
--- a/lib/Target/SystemZ/SystemZSubtarget.cpp
+++ b/lib/Target/SystemZ/SystemZSubtarget.cpp
@@ -19,7 +19,7 @@
using namespace llvm;
-SystemZSubtarget::SystemZSubtarget(const TargetMachine &TM, const Module &M,
+SystemZSubtarget::SystemZSubtarget(const std::string &TT,
const std::string &FS):
HasZ10Insts(false) {
std::string CPU = "z9";
diff --git a/lib/Target/SystemZ/SystemZSubtarget.h b/lib/Target/SystemZ/SystemZSubtarget.h
index fd8212c..405d6e9 100644
--- a/lib/Target/SystemZ/SystemZSubtarget.h
+++ b/lib/Target/SystemZ/SystemZSubtarget.h
@@ -19,18 +19,16 @@
#include <string>
namespace llvm {
-class Module;
-class TargetMachine;
class GlobalValue;
+class TargetMachine;
class SystemZSubtarget : public TargetSubtarget {
bool HasZ10Insts;
public:
/// This constructor initializes the data members to match that
- /// of the specified module.
+ /// of the specified triple.
///
- SystemZSubtarget(const TargetMachine &TM, const Module &M,
- const std::string &FS);
+ SystemZSubtarget(const std::string &TT, const std::string &FS);
/// ParseSubtargetFeatures - Parses features string setting specified
/// subtarget options. Definition of function is auto generated by tblgen.
diff --git a/lib/Target/SystemZ/SystemZTargetMachine.cpp b/lib/Target/SystemZ/SystemZTargetMachine.cpp
index 8bebf5b..6a9c10c 100644
--- a/lib/Target/SystemZ/SystemZTargetMachine.cpp
+++ b/lib/Target/SystemZ/SystemZTargetMachine.cpp
@@ -33,7 +33,7 @@ SystemZTargetMachine::SystemZTargetMachine(const Target &T,
const Module &M,
const std::string &FS)
: LLVMTargetMachine(T),
- Subtarget(*this, M, FS),
+ Subtarget(M.getTargetTriple(), FS),
DataLayout("E-p:64:64:64-i8:8:16-i16:16:16-i32:32:32-i64:64:64-f32:32:32"
"-f64:64:64-f128:128:128-a0:16:16"),
InstrInfo(*this), TLInfo(*this),