Fix a copy+paste bug; pseudo-instructions shouldn't have

encoding information.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50997 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Dan Gohman 2008-05-12 20:22:45 +00:00
parent 51d2ed179b
commit 9499b7186b

View File

@ -2601,58 +2601,51 @@ def LXADD8 : I<0xC0, MRMSrcMem, (outs GR8:$dst), (ins i8mem:$ptr, GR8:$val),
// Atomic exchange and and, or, xor // Atomic exchange and and, or, xor
let Constraints = "$val = $dst", Defs = [EFLAGS], let Constraints = "$val = $dst", Defs = [EFLAGS],
usesCustomDAGSchedInserter = 1 in { usesCustomDAGSchedInserter = 1 in {
def ATOMAND32 : I<0xC1, MRMSrcMem,(outs GR32:$dst),(ins i32mem:$ptr, GR32:$val), def ATOMAND32 : I<0, Pseudo, (outs GR32:$dst),(ins i32mem:$ptr, GR32:$val),
"#ATOMAND32 PSUEDO!", "#ATOMAND32 PSUEDO!",
[(set GR32:$dst, (atomic_load_and addr:$ptr, GR32:$val))]>, [(set GR32:$dst, (atomic_load_and addr:$ptr, GR32:$val))]>;
TB, LOCK;
} }
let Constraints = "$val = $dst", Defs = [EFLAGS], let Constraints = "$val = $dst", Defs = [EFLAGS],
usesCustomDAGSchedInserter = 1 in { usesCustomDAGSchedInserter = 1 in {
def ATOMOR32 : I<0xC1, MRMSrcMem, (outs GR32:$dst),(ins i32mem:$ptr, GR32:$val), def ATOMOR32 : I<0, Pseudo, (outs GR32:$dst),(ins i32mem:$ptr, GR32:$val),
"#ATOMOR32 PSUEDO!", "#ATOMOR32 PSUEDO!",
[(set GR32:$dst, (atomic_load_or addr:$ptr, GR32:$val))]>, [(set GR32:$dst, (atomic_load_or addr:$ptr, GR32:$val))]>;
TB, LOCK;
} }
let Constraints = "$val = $dst", Defs = [EFLAGS], let Constraints = "$val = $dst", Defs = [EFLAGS],
usesCustomDAGSchedInserter = 1 in { usesCustomDAGSchedInserter = 1 in {
def ATOMXOR32 : I<0xC1, MRMSrcMem,(outs GR32:$dst),(ins i32mem:$ptr, GR32:$val), def ATOMXOR32 : I<0, Pseudo,(outs GR32:$dst),(ins i32mem:$ptr, GR32:$val),
"#ATOMXOR32 PSUEDO!", "#ATOMXOR32 PSUEDO!",
[(set GR32:$dst, (atomic_load_xor addr:$ptr, GR32:$val))]>, [(set GR32:$dst, (atomic_load_xor addr:$ptr, GR32:$val))]>;
TB, LOCK;
} }
let Constraints = "$val = $dst", Defs = [EFLAGS], let Constraints = "$val = $dst", Defs = [EFLAGS],
usesCustomDAGSchedInserter = 1 in { usesCustomDAGSchedInserter = 1 in {
def ATOMMIN32: I<0xC1, MRMSrcMem, (outs GR32:$dst), (ins i32mem:$ptr, GR32:$val), def ATOMMIN32: I<0, Pseudo, (outs GR32:$dst), (ins i32mem:$ptr, GR32:$val),
"#ATOMMIN32 PSUEDO!", "#ATOMMIN32 PSUEDO!",
[(set GR32:$dst, (atomic_load_min addr:$ptr, GR32:$val))]>, [(set GR32:$dst, (atomic_load_min addr:$ptr, GR32:$val))]>;
TB, LOCK;
} }
let Constraints = "$val = $dst", Defs = [EFLAGS], let Constraints = "$val = $dst", Defs = [EFLAGS],
usesCustomDAGSchedInserter = 1 in { usesCustomDAGSchedInserter = 1 in {
def ATOMMAX32: I<0xC1, MRMSrcMem, (outs GR32:$dst),(ins i32mem:$ptr, GR32:$val), def ATOMMAX32: I<0, Pseudo, (outs GR32:$dst),(ins i32mem:$ptr, GR32:$val),
"#ATOMMAX32 PSUEDO!", "#ATOMMAX32 PSUEDO!",
[(set GR32:$dst, (atomic_load_max addr:$ptr, GR32:$val))]>, [(set GR32:$dst, (atomic_load_max addr:$ptr, GR32:$val))]>;
TB, LOCK;
} }
let Constraints = "$val = $dst", Defs = [EFLAGS], let Constraints = "$val = $dst", Defs = [EFLAGS],
usesCustomDAGSchedInserter = 1 in { usesCustomDAGSchedInserter = 1 in {
def ATOMUMIN32: I<0xC1, MRMSrcMem,(outs GR32:$dst),(ins i32mem:$ptr, GR32:$val), def ATOMUMIN32: I<0, Pseudo, (outs GR32:$dst),(ins i32mem:$ptr, GR32:$val),
"#ATOMUMIN32 PSUEDO!", "#ATOMUMIN32 PSUEDO!",
[(set GR32:$dst, (atomic_load_umin addr:$ptr, GR32:$val))]>, [(set GR32:$dst, (atomic_load_umin addr:$ptr, GR32:$val))]>;
TB, LOCK;
} }
let Constraints = "$val = $dst", Defs = [EFLAGS], let Constraints = "$val = $dst", Defs = [EFLAGS],
usesCustomDAGSchedInserter = 1 in { usesCustomDAGSchedInserter = 1 in {
def ATOMUMAX32: I<0xC1, MRMSrcMem,(outs GR32:$dst),(ins i32mem:$ptr, GR32:$val), def ATOMUMAX32: I<0, Pseudo, (outs GR32:$dst),(ins i32mem:$ptr, GR32:$val),
"#ATOMUMAX32 PSUEDO!", "#ATOMUMAX32 PSUEDO!",
[(set GR32:$dst, (atomic_load_umax addr:$ptr, GR32:$val))]>, [(set GR32:$dst, (atomic_load_umax addr:$ptr, GR32:$val))]>;
TB, LOCK;
} }
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//