summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/ARM/A15SDOptimizer.cpp
diff options
context:
space:
mode:
authorDiana Picus <diana.picus@linaro.org>2017-01-13 09:37:56 +0000
committerDiana Picus <diana.picus@linaro.org>2017-01-13 09:37:56 +0000
commit4f8c3e18824278a2fc59f273af5793ee8d5e2618 (patch)
treec7fdb8bd0cffc0d6183ab04465bd0d41d02df9e1 /llvm/lib/Target/ARM/A15SDOptimizer.cpp
parenteaed600a21754ed069d1143ff03fbd64722bc486 (diff)
downloadbcm5719-llvm-4f8c3e18824278a2fc59f273af5793ee8d5e2618.tar.gz
bcm5719-llvm-4f8c3e18824278a2fc59f273af5793ee8d5e2618.zip
[ARM] CodeGen: Remove AddDefaultPred. NFC.
Replace all uses of AddDefaultPred with MachineInstrBuilder::add(predOps()). This makes the code building MachineInstrs more readable, because it allows us to write code like: MIB.addSomeOperand(blah) .add(predOps()) .addAnotherOperand(blahblah) instead of AddDefaultPred(MIB.addSomeOperand(blah)) .addAnotherOperand(blahblah) This commit also adds the predOps helper in the ARM backend, as well as the add method taking a variable number of operands to the MachineInstrBuilder. The transformation has been done mostly automatically with a custom tool based on Clang AST Matchers + RefactoringTool. Differential Revision: https://reviews.llvm.org/D28555 llvm-svn: 291890
Diffstat (limited to 'llvm/lib/Target/ARM/A15SDOptimizer.cpp')
-rw-r--r--llvm/lib/Target/ARM/A15SDOptimizer.cpp24
1 files changed, 10 insertions, 14 deletions
diff --git a/llvm/lib/Target/ARM/A15SDOptimizer.cpp b/llvm/lib/Target/ARM/A15SDOptimizer.cpp
index 89859ba063d..8640c873f44 100644
--- a/llvm/lib/Target/ARM/A15SDOptimizer.cpp
+++ b/llvm/lib/Target/ARM/A15SDOptimizer.cpp
@@ -427,13 +427,11 @@ unsigned A15SDOptimizer::createDupLane(MachineBasicBlock &MBB,
unsigned Lane, bool QPR) {
unsigned Out = MRI->createVirtualRegister(QPR ? &ARM::QPRRegClass :
&ARM::DPRRegClass);
- AddDefaultPred(BuildMI(MBB,
- InsertBefore,
- DL,
- TII->get(QPR ? ARM::VDUPLN32q : ARM::VDUPLN32d),
- Out)
- .addReg(Reg)
- .addImm(Lane));
+ BuildMI(MBB, InsertBefore, DL,
+ TII->get(QPR ? ARM::VDUPLN32q : ARM::VDUPLN32d), Out)
+ .addReg(Reg)
+ .addImm(Lane)
+ .add(predOps(ARMCC::AL));
return Out;
}
@@ -476,13 +474,11 @@ unsigned A15SDOptimizer::createVExt(MachineBasicBlock &MBB,
const DebugLoc &DL, unsigned Ssub0,
unsigned Ssub1) {
unsigned Out = MRI->createVirtualRegister(&ARM::DPRRegClass);
- AddDefaultPred(BuildMI(MBB,
- InsertBefore,
- DL,
- TII->get(ARM::VEXTd32), Out)
- .addReg(Ssub0)
- .addReg(Ssub1)
- .addImm(1));
+ BuildMI(MBB, InsertBefore, DL, TII->get(ARM::VEXTd32), Out)
+ .addReg(Ssub0)
+ .addReg(Ssub1)
+ .addImm(1)
+ .add(predOps(ARMCC::AL));
return Out;
}
OpenPOWER on IntegriCloud