diff options
author | Eric Christopher <echristo@gmail.com> | 2015-01-27 01:01:38 +0000 |
---|---|---|
committer | Eric Christopher <echristo@gmail.com> | 2015-01-27 01:01:38 +0000 |
commit | fccff37b53c1183a26babe72fb23ae03a05069c9 (patch) | |
tree | 5950b39d81eeb5ce96df5234544b08be3b8105a8 | |
parent | 2b214e7ad358f6cff7a14b038b387556ba33cc60 (diff) | |
download | bcm5719-llvm-fccff37b53c1183a26babe72fb23ae03a05069c9.tar.gz bcm5719-llvm-fccff37b53c1183a26babe72fb23ae03a05069c9.zip |
Migrate CodeGenPrepare to use the Function based getSubtarget
code.
llvm-svn: 227157
-rw-r--r-- | llvm/lib/CodeGen/CodeGenPrepare.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/llvm/lib/CodeGen/CodeGenPrepare.cpp b/llvm/lib/CodeGen/CodeGenPrepare.cpp index c01fc2e2277..7ef02b8d8c0 100644 --- a/llvm/lib/CodeGen/CodeGenPrepare.cpp +++ b/llvm/lib/CodeGen/CodeGenPrepare.cpp @@ -211,7 +211,7 @@ bool CodeGenPrepare::runOnFunction(Function &F) { ModifiedDT = false; if (TM) - TLI = TM->getSubtargetImpl()->getTargetLowering(); + TLI = TM->getSubtargetImpl(F)->getTargetLowering(); TLInfo = &getAnalysis<TargetLibraryInfoWrapperPass>().getTLI(); TTI = &getAnalysis<TargetTransformInfo>(); DominatorTreeWrapperPass *DTWP = @@ -3143,8 +3143,10 @@ bool CodeGenPrepare::OptimizeMemoryInst(Instruction *MemoryInst, Value *Addr, << *MemoryInst << "\n"); if (SunkAddr->getType() != Addr->getType()) SunkAddr = Builder.CreateBitCast(SunkAddr, Addr->getType()); - } else if (AddrSinkUsingGEPs || (!AddrSinkUsingGEPs.getNumOccurrences() && - TM && TM->getSubtarget<TargetSubtargetInfo>().useAA())) { + } else if (AddrSinkUsingGEPs || + (!AddrSinkUsingGEPs.getNumOccurrences() && TM && + TM->getSubtarget<TargetSubtargetInfo>( + MemoryInst->getParent()->getParent()).useAA())) { // By default, we use the GEP-based method when AA is used later. This // prevents new inttoptr/ptrtoint pairs from degrading AA capabilities. DEBUG(dbgs() << "CGP: SINKING nonlocal addrmode: " << AddrMode << " for " |