Move to a private function to initialize the subtarget dependencies
[oota-llvm.git] / lib / Target / AArch64 / AArch64Subtarget.h
index 3eef2488067bddbb96897247be7096e0d45fb967..52124f650c7a297d50fd627ea6cf8cbbd66992a4 100644 (file)
@@ -58,7 +58,12 @@ protected:
   AArch64FrameLowering FrameLowering;
   AArch64InstrInfo InstrInfo;
   AArch64SelectionDAGInfo TSInfo;
-  std::unique_ptr<AArch64TargetLowering> TLInfo;
+  AArch64TargetLowering TLInfo;
+private:
+  /// initializeSubtargetDependencies - Initializes using CPUString and the
+  /// passed in feature string so that we can use initializer lists for
+  /// subtarget initialization.
+  AArch64Subtarget &initializeSubtargetDependencies(StringRef FS);
 
 public:
   /// This constructor initializes the data members to match that
@@ -71,7 +76,7 @@ public:
     return &FrameLowering;
   }
   const AArch64TargetLowering *getTargetLowering() const {
-    return TLInfo.get();
+    return &TLInfo;
   }
   const AArch64InstrInfo *getInstrInfo() const { return &InstrInfo; }
   const DataLayout *getDataLayout() const { return &DL; }