The version of AtomicSDNode::AtomicSDNode used (only) for

cmp-and-swap reversed the Cmp and Swap arguments; comments
make it clear this is unintentional.  Unfortunately, the
x86 BE had a compensating reversal, which is removed here.
PPC is OK.

From inspection of the Alpha code I think it is OK, but
if somebody has that platform please check it out.  I
cannot test on that platform.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56091 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Dale Johannesen
2008-09-11 03:12:59 +00:00
parent b63691350d
commit d18a462bdd
2 changed files with 8 additions and 8 deletions

View File

@ -1624,8 +1624,8 @@ class AtomicSDNode : public MemSDNode {
Align, /*isVolatile=*/true) {
Ops[0] = Chain;
Ops[1] = Ptr;
Ops[2] = Swp;
Ops[3] = Cmp;
Ops[2] = Cmp;
Ops[3] = Swp;
InitOperands(Ops, 4);
}
AtomicSDNode(unsigned Opc, SDVTList VTL, SDValue Chain, SDValue Ptr,