diff options
author | Johannes Doerfert <doerfert@cs.uni-saarland.de> | 2015-10-07 20:15:56 +0000 |
---|---|---|
committer | Johannes Doerfert <doerfert@cs.uni-saarland.de> | 2015-10-07 20:15:56 +0000 |
commit | 521dd5842f8d8d2e1b96dc16d0af1dcb333e806c (patch) | |
tree | 3f95f4546e3375cfb5ed9c7924c9ec9660f2e45e /polly/lib/CodeGen | |
parent | 512011c3f03785eb60b65afe53dd06d935b40483 (diff) | |
download | bcm5719-llvm-521dd5842f8d8d2e1b96dc16d0af1dcb333e806c.tar.gz bcm5719-llvm-521dd5842f8d8d2e1b96dc16d0af1dcb333e806c.zip |
Move the ValueMapT declaration out of BlockGenerator
Value maps are created and used in many places and it is not always
possible to include CodeGen/Blockgenerators.h. To this end, ValueMapT
now lives in the ScopHelper.h which does not have any dependences itself.
This patch also replaces uses of different other value map types with
the ValueMapT.
llvm-svn: 249606
Diffstat (limited to 'polly/lib/CodeGen')
-rw-r--r-- | polly/lib/CodeGen/IslNodeBuilder.cpp | 9 | ||||
-rw-r--r-- | polly/lib/CodeGen/LoopGenerators.cpp | 8 |
2 files changed, 7 insertions, 10 deletions
diff --git a/polly/lib/CodeGen/IslNodeBuilder.cpp b/polly/lib/CodeGen/IslNodeBuilder.cpp index a660328190e..910a3bee3cb 100644 --- a/polly/lib/CodeGen/IslNodeBuilder.cpp +++ b/polly/lib/CodeGen/IslNodeBuilder.cpp @@ -175,7 +175,7 @@ struct SubtreeReferences { LoopInfo &LI; ScalarEvolution &SE; Region &R; - polly::BlockGenerator::ValueMapT &GlobalMap; + ValueMapT &GlobalMap; SetVector<Value *> &Values; SetVector<const SCEV *> &SCEVs; BlockGenerator &BlockGen; @@ -311,8 +311,7 @@ void IslNodeBuilder::getReferencesInSubtree(__isl_keep isl_ast_node *For, }); } -void IslNodeBuilder::updateValues( - ParallelLoopGenerator::ValueToValueMapTy &NewValues) { +void IslNodeBuilder::updateValues(ValueMapT &NewValues) { SmallPtrSet<Value *, 5> Inserted; for (const auto &I : IDToValue) { @@ -592,7 +591,7 @@ void IslNodeBuilder::createForParallel(__isl_take isl_ast_node *For) { SubtreeValues.insert(V); } - ParallelLoopGenerator::ValueToValueMapTy NewValues; + ValueMapT NewValues; ParallelLoopGenerator ParallelLoopGen(Builder, P, LI, DT, DL); IV = ParallelLoopGen.createParallelLoop(ValueLB, ValueUB, ValueInc, @@ -607,7 +606,7 @@ void IslNodeBuilder::createForParallel(__isl_take isl_ast_node *For) { updateValues(NewValues); IDToValue[IteratorID] = IV; - ParallelLoopGenerator::ValueToValueMapTy NewValuesReverse; + ValueMapT NewValuesReverse; for (auto P : NewValues) NewValuesReverse[P.second] = P.first; diff --git a/polly/lib/CodeGen/LoopGenerators.cpp b/polly/lib/CodeGen/LoopGenerators.cpp index 4cc7a6c3f9e..74f19a8cffa 100644 --- a/polly/lib/CodeGen/LoopGenerators.cpp +++ b/polly/lib/CodeGen/LoopGenerators.cpp @@ -146,7 +146,7 @@ Value *polly::createLoop(Value *LB, Value *UB, Value *Stride, Value *ParallelLoopGenerator::createParallelLoop( Value *LB, Value *UB, Value *Stride, SetVector<Value *> &UsedValues, - ValueToValueMapTy &Map, BasicBlock::iterator *LoopBody) { + ValueMapT &Map, BasicBlock::iterator *LoopBody) { Function *SubFn; AllocaInst *Struct = storeValuesIntoStruct(UsedValues); @@ -305,8 +305,7 @@ ParallelLoopGenerator::storeValuesIntoStruct(SetVector<Value *> &Values) { } void ParallelLoopGenerator::extractValuesFromStruct( - SetVector<Value *> OldValues, Type *Ty, Value *Struct, - ValueToValueMapTy &Map) { + SetVector<Value *> OldValues, Type *Ty, Value *Struct, ValueMapT &Map) { for (unsigned i = 0; i < OldValues.size(); i++) { Value *Address = Builder.CreateStructGEP(Ty, Struct, i); Value *NewValue = Builder.CreateLoad(Address); @@ -317,8 +316,7 @@ void ParallelLoopGenerator::extractValuesFromStruct( Value *ParallelLoopGenerator::createSubFn(Value *Stride, AllocaInst *StructData, SetVector<Value *> Data, - ValueToValueMapTy &Map, - Function **SubFnPtr) { + ValueMapT &Map, Function **SubFnPtr) { BasicBlock *PrevBB, *HeaderBB, *ExitBB, *CheckNextBB, *PreHeaderBB, *AfterBB; Value *LBPtr, *UBPtr, *UserContext, *Ret1, *HasNextSchedule, *LB, *UB, *IV; Function *SubFn = createSubFnDefinition(); |