summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/PTX/PTXAsmPrinter.cpp
diff options
context:
space:
mode:
authorChe-Liang Chiou <clchiou@gmail.com>2011-03-18 11:08:52 +0000
committerChe-Liang Chiou <clchiou@gmail.com>2011-03-18 11:08:52 +0000
commitff9d938e33701cd092da1780608c33367a78c14d (patch)
treec6d237c513e54ff524203233163c987dc54416cb /llvm/lib/Target/PTX/PTXAsmPrinter.cpp
parentbac0d769cd2e1844a22fbca467947512c8c6c306 (diff)
downloadbcm5719-llvm-ff9d938e33701cd092da1780608c33367a78c14d.tar.gz
bcm5719-llvm-ff9d938e33701cd092da1780608c33367a78c14d.zip
ptx: add unconditional and conditional branch
llvm-svn: 127873
Diffstat (limited to 'llvm/lib/Target/PTX/PTXAsmPrinter.cpp')
-rw-r--r--llvm/lib/Target/PTX/PTXAsmPrinter.cpp19
1 files changed, 3 insertions, 16 deletions
diff --git a/llvm/lib/Target/PTX/PTXAsmPrinter.cpp b/llvm/lib/Target/PTX/PTXAsmPrinter.cpp
index 0b07f749b3e..19a699e44fe 100644
--- a/llvm/lib/Target/PTX/PTXAsmPrinter.cpp
+++ b/llvm/lib/Target/PTX/PTXAsmPrinter.cpp
@@ -91,17 +91,6 @@ static const char *getRegisterTypeName(unsigned RegNo) {
return NULL;
}
-static const char *getInstructionTypeName(const MachineInstr *MI) {
- for (int i = 0, e = MI->getNumOperands(); i != e; ++i) {
- const MachineOperand &MO = MI->getOperand(i);
- if (MO.getType() == MachineOperand::MO_Register)
- return getRegisterTypeName(MO.getReg());
- }
-
- llvm_unreachable("No reg operand found in instruction!");
- return NULL;
-}
-
static const char *getStateSpaceName(unsigned addressSpace) {
switch (addressSpace) {
default: llvm_unreachable("Unknown state space");
@@ -221,11 +210,6 @@ void PTXAsmPrinter::EmitInstruction(const MachineInstr *MI) {
OS << ';';
OS.flush();
- // Replace "%type" if found
- size_t pos;
- if ((pos = str.find("%type")) != std::string::npos)
- str.replace(pos, /*strlen("%type")==*/5, getInstructionTypeName(MI));
-
StringRef strref = StringRef(str);
OutStreamer.EmitRawText(strref);
}
@@ -244,6 +228,9 @@ void PTXAsmPrinter::printOperand(const MachineInstr *MI, int opNum,
case MachineOperand::MO_Immediate:
OS << (int) MO.getImm();
break;
+ case MachineOperand::MO_MachineBasicBlock:
+ OS << *MO.getMBB()->getSymbol();
+ break;
case MachineOperand::MO_Register:
OS << getRegisterName(MO.getReg());
break;
OpenPOWER on IntegriCloud