diff options
author | Bill Wendling <isanbard@gmail.com> | 2008-08-20 00:28:16 +0000 |
---|---|---|
committer | Bill Wendling <isanbard@gmail.com> | 2008-08-20 00:28:16 +0000 |
commit | 5bf1b4eacdd87b0753279a378e93126c0b053144 (patch) | |
tree | f565dc0232aa9f535805b48120207e695d82150f /lib/Target/X86/X86InstrInfo.td | |
parent | a044dfcb5ae3b789799cefaf5c4c2e1973fbf4c5 (diff) | |
download | llvm-5bf1b4eacdd87b0753279a378e93126c0b053144.tar.gz llvm-5bf1b4eacdd87b0753279a378e93126c0b053144.tar.bz2 llvm-5bf1b4eacdd87b0753279a378e93126c0b053144.tar.xz |
Revert r55018 and apply the correct "fix" for the 64-bit sub_and_fetch atomic.
Just expand it like the other X-bit sub_and_fetches.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55023 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/X86/X86InstrInfo.td')
-rw-r--r-- | lib/Target/X86/X86InstrInfo.td | 16 |
1 files changed, 0 insertions, 16 deletions
diff --git a/lib/Target/X86/X86InstrInfo.td b/lib/Target/X86/X86InstrInfo.td index 7b5ee91e9b..37a5fed51c 100644 --- a/lib/Target/X86/X86InstrInfo.td +++ b/lib/Target/X86/X86InstrInfo.td @@ -2634,22 +2634,6 @@ def LXADD8 : I<0xC0, MRMSrcMem, (outs GR8:$dst), (ins i8mem:$ptr, GR8:$val), TB, LOCK; } -// Atomic exchange and subtract -let Constraints = "$val = $dst", Defs = [EFLAGS] in { -def LXSUB32 : I<0xC1, MRMSrcMem, (outs GR32:$dst), (ins i32mem:$ptr, GR32:$val), - "lock\n\txadd{l}\t{$val, $ptr|$ptr, $val}", - [(set GR32:$dst, (atomic_load_sub_32 addr:$ptr, GR32:$val))]>, - TB, LOCK; -def LXSUB16 : I<0xC1, MRMSrcMem, (outs GR16:$dst), (ins i16mem:$ptr, GR16:$val), - "lock\n\txadd{w}\t{$val, $ptr|$ptr, $val}", - [(set GR16:$dst, (atomic_load_sub_16 addr:$ptr, GR16:$val))]>, - TB, OpSize, LOCK; -def LXSUB8 : I<0xC0, MRMSrcMem, (outs GR8:$dst), (ins i8mem:$ptr, GR8:$val), - "lock\n\txadd{b}\t{$val, $ptr|$ptr, $val}", - [(set GR8:$dst, (atomic_load_sub_8 addr:$ptr, GR8:$val))]>, - TB, LOCK; -} - // Atomic exchange, and, or, xor let Constraints = "$val = $dst", Defs = [EFLAGS], usesCustomDAGSchedInserter = 1 in { |