diff options
author | Johnny Chen <johnny.chen@apple.com> | 2010-08-12 20:46:17 +0000 |
---|---|---|
committer | Johnny Chen <johnny.chen@apple.com> | 2010-08-12 20:46:17 +0000 |
commit | 1adc40cac314b0a77b790b094bca146a3a868452 (patch) | |
tree | d2fa4aeb530f1165aece9bfbdc393780c11dc4af /lib/Target/ARM/ARMAsmPrinter.cpp | |
parent | fff2c4726baa0d6c9cb184c815677e33c0357c93 (diff) | |
download | external_llvm-1adc40cac314b0a77b790b094bca146a3a868452.zip external_llvm-1adc40cac314b0a77b790b094bca146a3a868452.tar.gz external_llvm-1adc40cac314b0a77b790b094bca146a3a868452.tar.bz2 |
Cleaned up the for-disassembly-only entries in the arm instruction table so that
the memory barrier variants (other than 'SY' full system domain read and write)
are treated as one instruction with option operand.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110951 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/ARM/ARMAsmPrinter.cpp')
-rw-r--r-- | lib/Target/ARM/ARMAsmPrinter.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/lib/Target/ARM/ARMAsmPrinter.cpp b/lib/Target/ARM/ARMAsmPrinter.cpp index b09cd73..ded9800 100644 --- a/lib/Target/ARM/ARMAsmPrinter.cpp +++ b/lib/Target/ARM/ARMAsmPrinter.cpp @@ -122,6 +122,8 @@ namespace { const char *Modifier = 0); void printBitfieldInvMaskImmOperand(const MachineInstr *MI, int OpNum, raw_ostream &O); + void printMemBOption(const MachineInstr *MI, int OpNum, + raw_ostream &O); void printSatShiftOperand(const MachineInstr *MI, int OpNum, raw_ostream &O); @@ -671,6 +673,13 @@ ARMAsmPrinter::printBitfieldInvMaskImmOperand(const MachineInstr *MI, int Op, O << "#" << lsb << ", #" << width; } +void +ARMAsmPrinter::printMemBOption(const MachineInstr *MI, int OpNum, + raw_ostream &O) { + unsigned val = MI->getOperand(OpNum).getImm(); + O << ARM_MB::MemBOptToString(val); +} + void ARMAsmPrinter::printSatShiftOperand(const MachineInstr *MI, int OpNum, raw_ostream &O) { unsigned ShiftOp = MI->getOperand(OpNum).getImm(); |