From: Sean Callanan Date: Fri, 23 Apr 2010 22:17:17 +0000 (+0000) Subject: Fixes to edis that mark x86 call targets as X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=a0f914b6c1fa9708d9b2d2712930430de4f1afac;p=oota-llvm.git Fixes to edis that mark x86 call targets as memory operands rather than immediate operands. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102217 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/tools/edis/EDOperand.cpp b/tools/edis/EDOperand.cpp index ca8bac1c5b4..d63c1c6bfbf 100644 --- a/tools/edis/EDOperand.cpp +++ b/tools/edis/EDOperand.cpp @@ -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: diff --git a/utils/TableGen/EDEmitter.cpp b/utils/TableGen/EDEmitter.cpp index 4c9db8ccddc..d3bf60e1c8c 100644 --- a/utils/TableGen/EDEmitter.cpp +++ b/utils/TableGen/EDEmitter.cpp @@ -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");