Grab the DataLayout off of the TargetMachine since that's where
authorEric Christopher <echristo@gmail.com>
Fri, 20 Feb 2015 20:56:39 +0000 (20:56 +0000)
committerEric Christopher <echristo@gmail.com>
Fri, 20 Feb 2015 20:56:39 +0000 (20:56 +0000)
it's stored.

llvm-svn: 230059

llvm/lib/CodeGen/GlobalMerge.cpp

index 8257567..6da9766 100644 (file)
@@ -144,7 +144,7 @@ INITIALIZE_TM_PASS(GlobalMerge, "global-merge", "Merge global variables",
 bool GlobalMerge::doMerge(SmallVectorImpl<GlobalVariable*> &Globals,
                           Module &M, bool isConst, unsigned AddrSpace) const {
   const TargetLowering *TLI = TM->getSubtargetImpl()->getTargetLowering();
-  const DataLayout *DL = TLI->getDataLayout();
+  const DataLayout *DL = TM->getDataLayout();
 
   // FIXME: Infer the maximum possible offset depending on the actual users
   // (these max offsets are different for the users inside Thumb or ARM
@@ -283,7 +283,7 @@ bool GlobalMerge::doInitialization(Module &M) {
   DenseMap<unsigned, SmallVector<GlobalVariable*, 16> > Globals, ConstGlobals,
                                                         BSSGlobals;
   const TargetLowering *TLI = TM->getSubtargetImpl()->getTargetLowering();
-  const DataLayout *DL = TLI->getDataLayout();
+  const DataLayout *DL = TM->getDataLayout();
   unsigned MaxOffset = TLI->getMaximalGlobalOffset();
   bool Changed = false;
   setMustKeepGlobalVariables(M);