summaryrefslogtreecommitdiff
path: root/lib/Target/ARM/ARMConstantIslandPass.cpp
diff options
context:
space:
mode:
authorAnton Korobeynikov <asl@math.spbu.ru>2011-01-30 22:07:39 +0000
committerAnton Korobeynikov <asl@math.spbu.ru>2011-01-30 22:07:39 +0000
commit98b928ea71576c243bdb203879d966be9cde5f3c (patch)
treeda3fc290110e803d7f843b71e0ae806bd6560149 /lib/Target/ARM/ARMConstantIslandPass.cpp
parented299f6fa9f31c6063b9e187e849bca1ae284d12 (diff)
downloadllvm-98b928ea71576c243bdb203879d966be9cde5f3c.tar.gz
llvm-98b928ea71576c243bdb203879d966be9cde5f3c.tar.bz2
llvm-98b928ea71576c243bdb203879d966be9cde5f3c.tar.xz
Save a mapping between original and cloned constpool entries.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124570 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/ARM/ARMConstantIslandPass.cpp')
-rw-r--r--lib/Target/ARM/ARMConstantIslandPass.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/Target/ARM/ARMConstantIslandPass.cpp b/lib/Target/ARM/ARMConstantIslandPass.cpp
index 84499b118e..dd81796e8a 100644
--- a/lib/Target/ARM/ARMConstantIslandPass.cpp
+++ b/lib/Target/ARM/ARMConstantIslandPass.cpp
@@ -368,6 +368,14 @@ bool ARMConstantIslands::runOnMachineFunction(MachineFunction &MF) {
if (isThumb && !HasFarJump && AFI->isLRSpilledForFarJump())
MadeChange |= UndoLRSpillRestore();
+ // Save the mapping between original and cloned constpool entries.
+ for (unsigned i = 0, e = CPEntries.size(); i != e; ++i) {
+ for (unsigned j = 0, je = CPEntries[i].size(); j != je; ++j) {
+ const CPEntry & CPE = CPEntries[i][j];
+ AFI->recordCPEClone(i, CPE.CPI);
+ }
+ }
+
DEBUG(errs() << '\n'; dumpBBs());
BBSizes.clear();