summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/Lanai/LanaiAsmPrinter.cpp
diff options
context:
space:
mode:
authorJacques Pienaar <jpienaar@google.com>2016-07-07 23:36:04 +0000
committerJacques Pienaar <jpienaar@google.com>2016-07-07 23:36:04 +0000
commit6d3eecc84304c0b36ed5f1ababa22cd974de1f5b (patch)
tree7754b66e6fb7eb27a95f26e03c130a403b878559 /llvm/lib/Target/Lanai/LanaiAsmPrinter.cpp
parent3f36781dec71788e87779005d7c18cb78c6f163d (diff)
downloadbcm5719-llvm-6d3eecc84304c0b36ed5f1ababa22cd974de1f5b.tar.gz
bcm5719-llvm-6d3eecc84304c0b36ed5f1ababa22cd974de1f5b.zip
[lanai] Use peephole optimizer to generate more conditional ALU operations.
Summary: * Similiar to the ARM backend yse the peephole optimizer to generate more conditional ALU operations; * Add predicated type with default always true to RR instructions in LanaiInstrInfo.td; * Move LanaiSetflagAluCombiner into optimizeCompare; * The ASM parser can currently only handle explicitly specified CC, so specify ".t" (true) where needed in the ASM test; * Remove unused MachineOperand flags; Reviewers: eliben Subscribers: aemerson Differential Revision: http://reviews.llvm.org/D22072 llvm-svn: 274807
Diffstat (limited to 'llvm/lib/Target/Lanai/LanaiAsmPrinter.cpp')
-rw-r--r--llvm/lib/Target/Lanai/LanaiAsmPrinter.cpp12
1 files changed, 2 insertions, 10 deletions
diff --git a/llvm/lib/Target/Lanai/LanaiAsmPrinter.cpp b/llvm/lib/Target/Lanai/LanaiAsmPrinter.cpp
index 0effa5cc653..d3ff9e8668d 100644
--- a/llvm/lib/Target/Lanai/LanaiAsmPrinter.cpp
+++ b/llvm/lib/Target/Lanai/LanaiAsmPrinter.cpp
@@ -65,7 +65,6 @@ private:
void LanaiAsmPrinter::printOperand(const MachineInstr *MI, int OpNum,
raw_ostream &O, const char *Modifier) {
const MachineOperand &MO = MI->getOperand(OpNum);
- unsigned TF = MO.getTargetFlags();
switch (MO.getType()) {
case MachineOperand::MO_Register:
@@ -81,10 +80,7 @@ void LanaiAsmPrinter::printOperand(const MachineInstr *MI, int OpNum,
break;
case MachineOperand::MO_GlobalAddress:
- if (TF == LanaiII::MO_PLT)
- O << "plt(" << *getSymbol(MO.getGlobal()) << ")";
- else
- O << *getSymbol(MO.getGlobal());
+ O << *getSymbol(MO.getGlobal());
break;
case MachineOperand::MO_BlockAddress: {
@@ -94,10 +90,7 @@ void LanaiAsmPrinter::printOperand(const MachineInstr *MI, int OpNum,
}
case MachineOperand::MO_ExternalSymbol:
- if (TF == LanaiII::MO_PLT)
- O << "plt(" << *GetExternalSymbolSymbol(MO.getSymbolName()) << ")";
- else
- O << *GetExternalSymbolSymbol(MO.getSymbolName());
+ O << *GetExternalSymbolSymbol(MO.getSymbolName());
break;
case MachineOperand::MO_JumpTableIndex:
@@ -116,7 +109,6 @@ void LanaiAsmPrinter::printOperand(const MachineInstr *MI, int OpNum,
}
// PrintAsmOperand - Print out an operand for an inline asm expression.
-//
bool LanaiAsmPrinter::PrintAsmOperand(const MachineInstr *MI, unsigned OpNo,
unsigned AsmVariant,
const char *ExtraCode, raw_ostream &O) {
OpenPOWER on IntegriCloud