Replace the use of TargetMachine with a tiny bool variable.
authorEric Christopher <echristo@gmail.com>
Fri, 6 Jun 2014 23:26:48 +0000 (23:26 +0000)
committerEric Christopher <echristo@gmail.com>
Fri, 6 Jun 2014 23:26:48 +0000 (23:26 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@210386 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/X86/X86JITInfo.cpp
lib/Target/X86/X86JITInfo.h
lib/Target/X86/X86TargetMachine.cpp

index e969ef2cf3d7f41373a67a25552a85f497411e81..a082c4f8b0effc66c0344b321af7230d9034c3df 100644 (file)
@@ -432,7 +432,7 @@ X86JITInfo::getLazyResolverFunction(JITCompilerFn F) {
   // SSE Callback should be called for SSE-enabled LLVM.
   return X86CompilationCallback_SSE;
 #else
-  if (Subtarget->hasSSE1())
+  if (useSSE)
     return X86CompilationCallback_SSE;
 #endif
 #endif
@@ -440,8 +440,8 @@ X86JITInfo::getLazyResolverFunction(JITCompilerFn F) {
   return X86CompilationCallback;
 }
 
-X86JITInfo::X86JITInfo(X86TargetMachine &tm) : TM(tm) {
-  Subtarget = &TM.getSubtarget<X86Subtarget>();
+X86JITInfo::X86JITInfo(bool UseSSE) {
+  useSSE = UseSSE;
   useGOT = 0;
   TLSOffset = nullptr;
 }
index 4d279de3425ff81cd7bd5340bdd27ff7b96ed85a..f9122697b74fff06c751b6ce41555c87cae334cf 100644 (file)
 #include "llvm/Target/TargetJITInfo.h"
 
 namespace llvm {
-  class X86TargetMachine;
   class X86Subtarget;
 
   class X86JITInfo : public TargetJITInfo {
-    X86TargetMachine &TM;
-    const X86Subtarget *Subtarget;
     uintptr_t PICBase;
     char* TLSOffset;
+    bool useSSE;
   public:
-    explicit X86JITInfo(X86TargetMachine &tm);
+    explicit X86JITInfo(bool UseSSE);
 
     /// replaceMachineCodeForFunction - Make it so that calling the function
     /// whose machine code is at OLD turns into a call to NEW, perhaps by
index 83b304184f8053ba2affc4e449a9914f4135c7c8..59b8cba31398fe4bdff7868c991a79d18624bf1e 100644 (file)
@@ -80,7 +80,7 @@ X86TargetMachine::X86TargetMachine(const Target &T, StringRef TT, StringRef CPU,
                     Subtarget.getStackAlignment(),
                     Subtarget.is64Bit() ? -8 : -4),
       DL(computeDataLayout(*getSubtargetImpl())), InstrInfo(*this),
-      TLInfo(*this), TSInfo(DL), JITInfo(*this) {
+      TLInfo(*this), TSInfo(DL), JITInfo(Subtarget.hasSSE1()) {
   // Determine the PICStyle based on the target selected.
   if (getRelocationModel() == Reloc::Static) {
     // Unless we're in PIC or DynamicNoPIC mode, set the PIC style to None.