Mercurial > hg > CbC > CbC_llvm
diff test/CodeGen/AArch64/arm64-atomic.ll @ 83:60c9769439b8 LLVM3.7
LLVM 3.7
author | Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp> |
---|---|
date | Wed, 18 Feb 2015 14:55:36 +0900 |
parents | 54457678186b |
children | afa8332a0e37 |
line wrap: on
line diff
--- a/test/CodeGen/AArch64/arm64-atomic.ll Mon Sep 08 22:07:30 2014 +0900 +++ b/test/CodeGen/AArch64/arm64-atomic.ll Wed Feb 18 14:55:36 2015 +0900 @@ -47,13 +47,13 @@ define i64 @fetch_and_nand_64(i64* %p) { ; CHECK-LABEL: fetch_and_nand_64: +; CHECK: mov x[[ADDR:[0-9]+]], x0 ; CHECK: [[LABEL:.?LBB[0-9]+_[0-9]+]]: -; CHECK: ldaxr x[[DEST_REG:[0-9]+]], [x0] +; CHECK: ldaxr x[[DEST_REG:[0-9]+]], [x[[ADDR]]] ; CHECK: mvn w[[TMP_REG:[0-9]+]], w[[DEST_REG]] ; CHECK: orr [[SCRATCH2_REG:x[0-9]+]], x[[TMP_REG]], #0xfffffffffffffff8 -; CHECK: stlxr [[SCRATCH_REG:w[0-9]+]], [[SCRATCH2_REG]], [x0] +; CHECK: stlxr [[SCRATCH_REG:w[0-9]+]], [[SCRATCH2_REG]], [x[[ADDR]]] ; CHECK: cbnz [[SCRATCH_REG]], [[LABEL]] -; CHECK: mov x0, x[[DEST_REG]] %val = atomicrmw nand i64* %p, i64 7 acq_rel ret i64 %val @@ -75,12 +75,12 @@ define i64 @fetch_and_or_64(i64* %p) { ; CHECK: fetch_and_or_64: +; CHECK: mov x[[ADDR:[0-9]+]], x0 ; CHECK: [[LABEL:.?LBB[0-9]+_[0-9]+]]: -; CHECK: ldxr [[DEST_REG:x[0-9]+]], [x0] +; CHECK: ldxr [[DEST_REG:x[0-9]+]], [x[[ADDR]]] ; CHECK: orr [[SCRATCH2_REG:x[0-9]+]], [[DEST_REG]], #0x7 -; CHECK: stxr [[SCRATCH_REG:w[0-9]+]], [[SCRATCH2_REG]], [x0] +; CHECK: stxr [[SCRATCH_REG:w[0-9]+]], [[SCRATCH2_REG]], [x[[ADDR]]] ; CHECK: cbnz [[SCRATCH_REG]], [[LABEL]] -; CHECK: mov x0, [[DEST_REG]] %val = atomicrmw or i64* %p, i64 7 monotonic ret i64 %val }