diff options
author | Alkis Evlogimenos <alkis@evlogimenos.com> | 2004-02-17 08:17:40 +0000 |
---|---|---|
committer | Alkis Evlogimenos <alkis@evlogimenos.com> | 2004-02-17 08:17:40 +0000 |
commit | 503770cfc3d7f4ec313723280eb75535d4c5de55 (patch) | |
tree | 0a80ea677bd1ce9d5c6d23dd4ed828fdc1b074ef /lib | |
parent | 11390e76e73d36e62c981069a67d1d33823262de (diff) | |
download | llvm-503770cfc3d7f4ec313723280eb75535d4c5de55.tar.gz llvm-503770cfc3d7f4ec313723280eb75535d4c5de55.tar.bz2 llvm-503770cfc3d7f4ec313723280eb75535d4c5de55.tar.xz |
Add SUB{rm,mr,mi}{8,16,32} instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11543 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r-- | lib/Target/X86/X86InstrInfo.td | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/lib/Target/X86/X86InstrInfo.td b/lib/Target/X86/X86InstrInfo.td index c3bea65625..59806dd354 100644 --- a/lib/Target/X86/X86InstrInfo.td +++ b/lib/Target/X86/X86InstrInfo.td @@ -297,6 +297,18 @@ def SUBri32 : I2A32<"sub", 0x81, MRMS5r >, Pattern<(set R32, (minus def SUBri16b : I2A8 <"sub", 0x83, MRMS5r >, OpSize; def SUBri32b : I2A8 <"sub", 0x83, MRMS5r >; +def SUBmr8 : I2A8 <"sub", 0x28, MRMDestMem>; // [mem8] -= R8 +def SUBmr16 : I2A16<"sub", 0x29, MRMDestMem>, OpSize; // [mem16] -= R16 +def SUBmr32 : I2A32<"sub", 0x29, MRMDestMem>; // [mem32] -= R32 +def SUBrm8 : I2A8 <"sub", 0x2A, MRMSrcMem >; // R8 -= [mem8] +def SUBrm16 : I2A16<"sub", 0x2B, MRMSrcMem >, OpSize; // R16 -= [mem16] +def SUBrm32 : I2A32<"sub", 0x2B, MRMSrcMem >; // R32 -= [mem32] +def SUBmi8 : I2A8 <"sub", 0x80, MRMSrcMem >; // [mem8] -= I8 +def SUBmi16 : I2A16<"sub", 0x81, MRMSrcMem >, OpSize; // [mem16] -= I16 +def SUBmi32 : I2A32<"sub", 0x81, MRMSrcMem >; // [mem32] -= I8 +def SUBmi16b : I2A8 <"sub", 0x83, MRMSrcMem >, OpSize; // [mem16] -= I8 +def SUBmi32b : I2A8 <"sub", 0x83, MRMSrcMem >; // [mem32] -= I32 + def SBBrr32 : I2A32<"sbb", 0x19, MRMDestReg>; // R32 -= R32+Borrow def SBBrm32 : I2A32<"sbb", 0x19, MRMSrcMem >; // R32 -= [mem32]+Borrow def SBBmr32 : I2A32<"sbb", 0x1B, MRMDestMem>; // [mem32] -= R32+Borrow |