mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-10-15 03:19:58 +00:00
Stop using the old pre-UAL syntax for LDM/STM instruction suffixes.
This does not move entirely to UAL syntax, since the default "increment after" suffix is empty but we still use "IA" for that. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98635 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -78,16 +78,6 @@ namespace ARM_AM {
|
||||
}
|
||||
}
|
||||
|
||||
static inline const char *getAMSubModeAltStr(AMSubMode Mode, bool isLD) {
|
||||
switch (Mode) {
|
||||
default: assert(0 && "Unknown addressing sub-mode!");
|
||||
case ARM_AM::ia: return isLD ? "fd" : "ea";
|
||||
case ARM_AM::ib: return isLD ? "ed" : "fa";
|
||||
case ARM_AM::da: return isLD ? "fa" : "ed";
|
||||
case ARM_AM::db: return isLD ? "ea" : "fd";
|
||||
}
|
||||
}
|
||||
|
||||
/// rotr32 - Rotate a 32-bit unsigned value right by a specified # bits.
|
||||
///
|
||||
static inline unsigned rotr32(unsigned Val, unsigned Amt) {
|
||||
|
@@ -518,17 +518,7 @@ void ARMAsmPrinter::printAddrMode4Operand(const MachineInstr *MI, int Op,
|
||||
const MachineOperand &MO2 = MI->getOperand(Op+1);
|
||||
ARM_AM::AMSubMode Mode = ARM_AM::getAM4SubMode(MO2.getImm());
|
||||
if (Modifier && strcmp(Modifier, "submode") == 0) {
|
||||
if (MO1.getReg() == ARM::SP) {
|
||||
// FIXME
|
||||
bool isLDM = (MI->getOpcode() == ARM::LDM ||
|
||||
MI->getOpcode() == ARM::LDM_UPD ||
|
||||
MI->getOpcode() == ARM::LDM_RET ||
|
||||
MI->getOpcode() == ARM::t2LDM ||
|
||||
MI->getOpcode() == ARM::t2LDM_UPD ||
|
||||
MI->getOpcode() == ARM::t2LDM_RET);
|
||||
O << ARM_AM::getAMSubModeAltStr(Mode, isLDM);
|
||||
} else
|
||||
O << ARM_AM::getAMSubModeStr(Mode);
|
||||
O << ARM_AM::getAMSubModeStr(Mode);
|
||||
} else if (Modifier && strcmp(Modifier, "wide") == 0) {
|
||||
ARM_AM::AMSubMode Mode = ARM_AM::getAM4SubMode(MO2.getImm());
|
||||
if (Mode == ARM_AM::ia)
|
||||
|
@@ -226,15 +226,7 @@ void ARMInstPrinter::printAddrMode4Operand(const MCInst *MI, unsigned OpNum,
|
||||
const MCOperand &MO2 = MI->getOperand(OpNum+1);
|
||||
ARM_AM::AMSubMode Mode = ARM_AM::getAM4SubMode(MO2.getImm());
|
||||
if (Modifier && strcmp(Modifier, "submode") == 0) {
|
||||
if (MO1.getReg() == ARM::SP) {
|
||||
// FIXME
|
||||
bool isLDM = (MI->getOpcode() == ARM::LDM ||
|
||||
MI->getOpcode() == ARM::LDM_RET ||
|
||||
MI->getOpcode() == ARM::t2LDM ||
|
||||
MI->getOpcode() == ARM::t2LDM_RET);
|
||||
O << ARM_AM::getAMSubModeAltStr(Mode, isLDM);
|
||||
} else
|
||||
O << ARM_AM::getAMSubModeStr(Mode);
|
||||
O << ARM_AM::getAMSubModeStr(Mode);
|
||||
} else if (Modifier && strcmp(Modifier, "wide") == 0) {
|
||||
ARM_AM::AMSubMode Mode = ARM_AM::getAM4SubMode(MO2.getImm());
|
||||
if (Mode == ARM_AM::ia)
|
||||
|
Reference in New Issue
Block a user