summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDylan Noblesmith <nobled@dreamwidth.org>2014-08-26 02:03:43 +0000
committerDylan Noblesmith <nobled@dreamwidth.org>2014-08-26 02:03:43 +0000
commitb06f77b608a449ad7342977085dbab8c8e124b40 (patch)
tree696f127ef94db1f2a3e1a0229d01b7615850d6b9
parent43f49cad78685c075dd7a6d074cea58ff847516c (diff)
downloadbcm5719-llvm-b06f77b608a449ad7342977085dbab8c8e124b40.tar.gz
bcm5719-llvm-b06f77b608a449ad7342977085dbab8c8e124b40.zip
Revert "AArch64: use std::vector for temp array"
This reverts commit r216365. llvm-svn: 216433
-rw-r--r--llvm/lib/Target/AArch64/AArch64CollectLOH.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/llvm/lib/Target/AArch64/AArch64CollectLOH.cpp b/llvm/lib/Target/AArch64/AArch64CollectLOH.cpp
index bb57d76a8cd..0ffa0334850 100644
--- a/llvm/lib/Target/AArch64/AArch64CollectLOH.cpp
+++ b/llvm/lib/Target/AArch64/AArch64CollectLOH.cpp
@@ -1054,8 +1054,7 @@ bool AArch64CollectLOH::runOnMachineFunction(MachineFunction &MF) {
bool Modified = false;
// Start with ADRP.
- std::vector<InstrToInstrs> COTRUVector(NbReg);
- auto ColorOpToReachedUses = COTRUVector.data();
+ InstrToInstrs *ColorOpToReachedUses = new InstrToInstrs[NbReg];
// Compute the reaching def in ADRP mode, meaning ADRP definitions
// are first considered as uses.
@@ -1070,9 +1069,10 @@ bool AArch64CollectLOH::runOnMachineFunction(MachineFunction &MF) {
// Compute LOH for ADRP.
computeADRP(ADRPToReachingDefs, *AArch64FI, MDT);
+ delete[] ColorOpToReachedUses;
+
// Continue with general ADRP -> ADD/LDR -> LDR/STR pattern.
- COTRUVector.clear();
- COTRUVector.resize(NbReg);
+ ColorOpToReachedUses = new InstrToInstrs[NbReg];
// first perform a regular reaching def analysis.
reachingDef(MF, ColorOpToReachedUses, RegToId, false, DummyOp);
@@ -1086,6 +1086,7 @@ bool AArch64CollectLOH::runOnMachineFunction(MachineFunction &MF) {
// Compute other than AdrpAdrp LOH.
computeOthers(UsesToReachingDefs, ColorOpToReachedUses, *AArch64FI, RegToId,
MDT);
+ delete[] ColorOpToReachedUses;
if (BasicBlockScopeOnly)
MF.DeleteMachineInstr(DummyOp);
OpenPOWER on IntegriCloud