[llvm] r199651 - [x86] Fix disassembly of callw instruction
David Woodhouse
dwmw2 at infradead.org
Mon Jan 20 04:02:40 PST 2014
Author: dwmw2
Date: Mon Jan 20 06:02:40 2014
New Revision: 199651
URL: http://llvm.org/viewvc/llvm-project?rev=199651&view=rev
Log:
[x86] Fix disassembly of callw instruction
Not quite sure why this was marked isAsmParserOnly, but it means that the
disassembler can't see it either.
Modified:
llvm/trunk/lib/Target/X86/X86InstrControl.td
llvm/trunk/test/MC/Disassembler/X86/x86-16.txt
Modified: llvm/trunk/lib/Target/X86/X86InstrControl.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86InstrControl.td?rev=199651&r1=199650&r2=199651&view=diff
==============================================================================
--- llvm/trunk/lib/Target/X86/X86InstrControl.td (original)
+++ llvm/trunk/lib/Target/X86/X86InstrControl.td Mon Jan 20 06:02:40 2014
@@ -186,6 +186,10 @@ let isCall = 1 in
(outs), (ins i32imm_pcrel:$dst),
"call{l}\t$dst", [], IIC_CALL_RI>, OpSize16,
Requires<[Not64BitMode]>, Sched<[WriteJump]>;
+ def CALLpcrel16 : Ii16PCRel<0xE8, RawFrm,
+ (outs), (ins i16imm_pcrel:$dst),
+ "call{w}\t$dst", [], IIC_CALL_RI>, OpSize,
+ Sched<[WriteJump]>;
def CALL16r : I<0xFF, MRM2r, (outs), (ins GR16:$dst),
"call{w}\t{*}$dst", [(X86call GR16:$dst)], IIC_CALL_RI>,
OpSize, Requires<[Not64BitMode]>, Sched<[WriteJump]>;
@@ -218,12 +222,6 @@ let isCall = 1 in
def FARCALL32m : I<0xFF, MRM3m, (outs), (ins opaque48mem:$dst),
"lcall{l}\t{*}$dst", [], IIC_CALL_FAR_MEM>, OpSize16,
Sched<[WriteJumpLd]>;
-
- // callw for 16 bit code for the assembler.
- let isAsmParserOnly = 1 in
- def CALLpcrel16 : Ii16PCRel<0xE8, RawFrm,
- (outs), (ins i16imm_pcrel:$dst),
- "callw\t$dst", []>, OpSize;
}
Modified: llvm/trunk/test/MC/Disassembler/X86/x86-16.txt
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/Disassembler/X86/x86-16.txt?rev=199651&r1=199650&r2=199651&view=diff
==============================================================================
--- llvm/trunk/test/MC/Disassembler/X86/x86-16.txt (original)
+++ llvm/trunk/test/MC/Disassembler/X86/x86-16.txt Mon Jan 20 06:02:40 2014
@@ -492,8 +492,8 @@
# CHECK: calll
0x66 0xe8 0x00 0x00 0x00 0x00
-# CHECKX: callw
-#0xe8 0x00 0x00
+# CHECK: callw
+0xe8 0x00 0x00
# CHECK: incb %al
0xfe 0xc0
More information about the llvm-commits
mailing list