Fixes to edis that mark x86 call targets as
authorSean Callanan <scallanan@apple.com>
Fri, 23 Apr 2010 22:17:17 +0000 (22:17 +0000)
committerSean Callanan <scallanan@apple.com>
Fri, 23 Apr 2010 22:17:17 +0000 (22:17 +0000)
memory operands rather than immediate operands.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102217 91177308-0d34-0410-b5e6-96231b3b80d8

tools/edis/EDOperand.cpp
utils/TableGen/EDEmitter.cpp

index ca8bac1c5b4d8b12e82d2e6bb4d2e7a960fa5ce9..d63c1c6bfbf938d18a7367fb9d8e846c3200b6de 100644 (file)
@@ -233,6 +233,8 @@ int EDOperand::isMemory() {
   default:
     return 0;
   case kOperandTypeX86Memory:
+  case kOperandTypeX86PCRelative:
+  case kOperandTypeX86EffectiveAddress:
   case kOperandTypeARMSoReg:
   case kOperandTypeARMSoImm:
   case kOperandTypeARMAddrMode2:
@@ -243,6 +245,7 @@ int EDOperand::isMemory() {
   case kOperandTypeARMAddrMode5:
   case kOperandTypeARMAddrMode6:
   case kOperandTypeARMAddrModePC:
+  case kOperandTypeARMBranchTarget:
   case kOperandTypeThumbAddrModeS1:
   case kOperandTypeThumbAddrModeS2:
   case kOperandTypeThumbAddrModeS4:
index 4c9db8ccddc324c6129c9adb207d77d2ba563447..d3bf60e1c8c3f08ef03dec7fcc96a129344b83c6 100644 (file)
@@ -316,12 +316,10 @@ static int X86TypeFromOpName(LiteralConstantEmitter *type,
   IMM("i16imm");
   IMM("i16i8imm");
   IMM("i32imm");
-  IMM("i32imm_pcrel");
   IMM("i32i8imm");
   IMM("i64imm");
   IMM("i64i8imm");
   IMM("i64i32imm");
-  IMM("i64i32imm_pcrel");
   IMM("SSECC");
   
   // all R, I, R, I, R
@@ -350,6 +348,8 @@ static int X86TypeFromOpName(LiteralConstantEmitter *type,
   LEA("lea64mem");
   
   // all I
+  PCR("i32imm_pcrel");
+  PCR("i64i32imm_pcrel");
   PCR("brtarget8");
   PCR("offset8");
   PCR("offset16");