summaryrefslogtreecommitdiff
path: root/lib/Target/X86/X86InstrExtension.td
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2017-12-18 20:10:56 +0000
committerDimitry Andric <dim@FreeBSD.org>2017-12-18 20:10:56 +0000
commit044eb2f6afba375a914ac9d8024f8f5142bb912e (patch)
tree1475247dc9f9fe5be155ebd4c9069c75aadf8c20 /lib/Target/X86/X86InstrExtension.td
parenteb70dddbd77e120e5d490bd8fbe7ff3f8fa81c6b (diff)
Notes
Diffstat (limited to 'lib/Target/X86/X86InstrExtension.td')
-rw-r--r--lib/Target/X86/X86InstrExtension.td26
1 files changed, 12 insertions, 14 deletions
diff --git a/lib/Target/X86/X86InstrExtension.td b/lib/Target/X86/X86InstrExtension.td
index af43d9f53325..2a8ab0069b1e 100644
--- a/lib/Target/X86/X86InstrExtension.td
+++ b/lib/Target/X86/X86InstrExtension.td
@@ -12,32 +12,30 @@
//===----------------------------------------------------------------------===//
let hasSideEffects = 0 in {
- let Defs = [AX], Uses = [AL] in
+ let Defs = [AX], Uses = [AL] in // AX = signext(AL)
def CBW : I<0x98, RawFrm, (outs), (ins),
- "{cbtw|cbw}", [], IIC_CBW>, OpSize16; // AX = signext(AL)
- let Defs = [EAX], Uses = [AX] in
+ "{cbtw|cbw}", [], IIC_CBW>, OpSize16, Sched<[WriteALU]>;
+ let Defs = [EAX], Uses = [AX] in // EAX = signext(AX)
def CWDE : I<0x98, RawFrm, (outs), (ins),
- "{cwtl|cwde}", [], IIC_CBW>, OpSize32; // EAX = signext(AX)
+ "{cwtl|cwde}", [], IIC_CBW>, OpSize32, Sched<[WriteALU]>;
- let Defs = [AX,DX], Uses = [AX] in
+ let Defs = [AX,DX], Uses = [AX] in // DX:AX = signext(AX)
def CWD : I<0x99, RawFrm, (outs), (ins),
- "{cwtd|cwd}", [], IIC_CBW>, OpSize16; // DX:AX = signext(AX)
- let Defs = [EAX,EDX], Uses = [EAX] in
+ "{cwtd|cwd}", [], IIC_CBW>, OpSize16, Sched<[WriteALU]>;
+ let Defs = [EAX,EDX], Uses = [EAX] in // EDX:EAX = signext(EAX)
def CDQ : I<0x99, RawFrm, (outs), (ins),
- "{cltd|cdq}", [], IIC_CBW>, OpSize32; // EDX:EAX = signext(EAX)
+ "{cltd|cdq}", [], IIC_CBW>, OpSize32, Sched<[WriteALU]>;
- let Defs = [RAX], Uses = [EAX] in
+ let Defs = [RAX], Uses = [EAX] in // RAX = signext(EAX)
def CDQE : RI<0x98, RawFrm, (outs), (ins),
- "{cltq|cdqe}", [], IIC_CBW>; // RAX = signext(EAX)
+ "{cltq|cdqe}", [], IIC_CBW>, Sched<[WriteALU]>;
- let Defs = [RAX,RDX], Uses = [RAX] in
+ let Defs = [RAX,RDX], Uses = [RAX] in // RDX:RAX = signext(RAX)
def CQO : RI<0x99, RawFrm, (outs), (ins),
- "{cqto|cqo}", [], IIC_CBW>; // RDX:RAX = signext(RAX)
+ "{cqto|cqo}", [], IIC_CBW>, Sched<[WriteALU]>;
}
-
-
// Sign/Zero extenders
let hasSideEffects = 0 in {
def MOVSX16rr8 : I<0xBE, MRMSrcReg, (outs GR16:$dst), (ins GR8:$src),