summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorManuel Jacob <me@manueljacob.de>2015-12-23 00:19:45 +0000
committerManuel Jacob <me@manueljacob.de>2015-12-23 00:19:45 +0000
commita4efd8ac2efde5fade99e47f1abb51bdb84fd68d (patch)
tree7eae43733fae710509c17fe523d42b1fbafbf639 /llvm/lib
parent1cb242eb139d31e2d76b8a2affef97eb9b33ad1b (diff)
downloadbcm5719-llvm-a4efd8ac2efde5fade99e47f1abb51bdb84fd68d.tar.gz
bcm5719-llvm-a4efd8ac2efde5fade99e47f1abb51bdb84fd68d.zip
[RS4GC] Fix base pair printing for constants.
Previously, "%" + name of the value was printed for each derived and base pointer. This is correct for instructions, but wrong for e.g. globals. llvm-svn: 256305
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp17
1 files changed, 12 insertions, 5 deletions
diff --git a/llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp b/llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
index 5b3a7644e78..062fba5cdad 100644
--- a/llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
+++ b/llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
@@ -1208,8 +1208,11 @@ static void findBasePointers(DominatorTree &DT, DefiningValueMapTy &DVCache,
std::sort(Temp.begin(), Temp.end(), order_by_name);
for (Value *Ptr : Temp) {
Value *Base = PointerToBase[Ptr];
- errs() << " derived %" << Ptr->getName() << " base %" << Base->getName()
- << "\n";
+ errs() << " derived ";
+ Ptr->printAsOperand(errs(), false);
+ errs() << " base ";
+ Base->printAsOperand(errs(), false);
+ errs() << "\n";;
}
}
@@ -2378,9 +2381,13 @@ static bool insertParsePoints(Function &F, DominatorTree &DT,
if (PrintBasePointers) {
for (auto &Info : Records) {
errs() << "Base Pairs: (w/Relocation)\n";
- for (auto Pair : Info.PointerToBase)
- errs() << " derived %" << Pair.first->getName() << " base %"
- << Pair.second->getName() << "\n";
+ for (auto Pair : Info.PointerToBase) {
+ errs() << " derived ";
+ Pair.first->printAsOperand(errs(), false);
+ errs() << " base ";
+ Pair.second->printAsOperand(errs(), false);
+ errs() << "\n";
+ }
}
}
OpenPOWER on IntegriCloud