summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2009-09-14 01:34:40 +0000
committerChris Lattner <sabre@nondot.org>2009-09-14 01:34:40 +0000
commitf92c95f3070f2f797987d2b753780a3a5e482351 (patch)
treef3c6887d3a131450e2ffd156fe6f80da2917b256 /lib
parentf96271afed5504d75a71e9dd9ed89152645604aa (diff)
downloadllvm-f92c95f3070f2f797987d2b753780a3a5e482351.tar.gz
llvm-f92c95f3070f2f797987d2b753780a3a5e482351.tar.bz2
llvm-f92c95f3070f2f797987d2b753780a3a5e482351.tar.xz
tidy up a bit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81744 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r--lib/Target/X86/AsmPrinter/X86ATTInstPrinter.cpp24
1 files changed, 8 insertions, 16 deletions
diff --git a/lib/Target/X86/AsmPrinter/X86ATTInstPrinter.cpp b/lib/Target/X86/AsmPrinter/X86ATTInstPrinter.cpp
index a25fb2e0e3..f943ccf7e3 100644
--- a/lib/Target/X86/AsmPrinter/X86ATTInstPrinter.cpp
+++ b/lib/Target/X86/AsmPrinter/X86ATTInstPrinter.cpp
@@ -41,46 +41,38 @@ void X86ATTInstPrinter::printSSECC(const MCInst *MI, unsigned Op) {
}
}
-
void X86ATTInstPrinter::printPICLabel(const MCInst *MI, unsigned Op) {
llvm_unreachable("This is only used for MOVPC32r,"
"should lower before instruction printing!");
}
-
/// print_pcrel_imm - This is used to print an immediate value that ends up
/// being encoded as a pc-relative value. These print slightly differently, for
/// example, a $ is not emitted.
void X86ATTInstPrinter::print_pcrel_imm(const MCInst *MI, unsigned OpNo) {
const MCOperand &Op = MI->getOperand(OpNo);
-
if (Op.isImm())
O << Op.getImm();
- else if (Op.isExpr())
+ else {
+ assert(Op.isExpr() && "unknown pcrel immediate operand");
Op.getExpr()->print(O, MAI);
- else
- llvm_unreachable("Unknown pcrel immediate operand");
+ }
}
-
void X86ATTInstPrinter::printOperand(const MCInst *MI, unsigned OpNo,
- const char *Modifier) {
+ const char *Modifier) {
assert(Modifier == 0 && "Modifiers should not be used");
const MCOperand &Op = MI->getOperand(OpNo);
if (Op.isReg()) {
O << '%' << getRegisterName(Op.getReg());
- return;
} else if (Op.isImm()) {
O << '$' << Op.getImm();
- return;
- } else if (Op.isExpr()) {
+ } else {
+ assert(Op.isExpr() && "unknown operand kind in printOperand");
O << '$';
Op.getExpr()->print(O, MAI);
- return;
}
-
- O << "<<UNKNOWN OPERAND KIND>>";
}
void X86ATTInstPrinter::printLeaMemReference(const MCInst *MI, unsigned Op) {
@@ -114,8 +106,8 @@ void X86ATTInstPrinter::printLeaMemReference(const MCInst *MI, unsigned Op) {
}
void X86ATTInstPrinter::printMemReference(const MCInst *MI, unsigned Op) {
- const MCOperand &Segment = MI->getOperand(Op+4);
- if (Segment.getReg()) {
+ // If this has a segment register, print it.
+ if (MI->getOperand(Op+4).getReg()) {
printOperand(MI, Op+4);
O << ':';
}