diff options
author | Tim Northover <tnorthover@apple.com> | 2016-04-13 16:25:39 +0000 |
---|---|---|
committer | Tim Northover <tnorthover@apple.com> | 2016-04-13 16:25:39 +0000 |
commit | b8a1ecfc62dc36cc7cc736e0c29493f276d4620e (patch) | |
tree | 0f838da11988c8af73b411af2fa4db57dd0b571e /llvm/test | |
parent | eb4d5a9b0b30d6754e5308dc3650ffe609cc1d07 (diff) | |
download | bcm5719-llvm-b8a1ecfc62dc36cc7cc736e0c29493f276d4620e.tar.gz bcm5719-llvm-b8a1ecfc62dc36cc7cc736e0c29493f276d4620e.zip |
AArch64: don't create instructions that write to xzr/wzr twice.
These are unpredictable even on AArch64.
Patch by Yichao Yu.
llvm-svn: 266206
Diffstat (limited to 'llvm/test')
-rw-r--r-- | llvm/test/CodeGen/AArch64/arm64-atomic-128.ll | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/llvm/test/CodeGen/AArch64/arm64-atomic-128.ll b/llvm/test/CodeGen/AArch64/arm64-atomic-128.ll index 44c24c51f0d..d7188f31c56 100644 --- a/llvm/test/CodeGen/AArch64/arm64-atomic-128.ll +++ b/llvm/test/CodeGen/AArch64/arm64-atomic-128.ll @@ -190,7 +190,7 @@ define void @atomic_store_seq_cst(i128 %in, i128* %p) { ; CHECK-LABEL: atomic_store_seq_cst: ; CHECK-NOT: dmb ; CHECK: [[LABEL:.?LBB[0-9]+_[0-9]+]]: -; CHECK: ldaxp xzr, xzr, [x2] +; CHECK: ldaxp xzr, [[IGNORED:x[0-9]+]], [x2] ; CHECK: stlxp [[SUCCESS:w[0-9]+]], x0, x1, [x2] ; CHECK: cbnz [[SUCCESS]], [[LABEL]] ; CHECK-NOT: dmb @@ -202,7 +202,7 @@ define void @atomic_store_release(i128 %in, i128* %p) { ; CHECK-LABEL: atomic_store_release: ; CHECK-NOT: dmb ; CHECK: [[LABEL:.?LBB[0-9]+_[0-9]+]]: -; CHECK: ldxp xzr, xzr, [x2] +; CHECK: ldxp xzr, [[IGNORED:x[0-9]+]], [x2] ; CHECK: stlxp [[SUCCESS:w[0-9]+]], x0, x1, [x2] ; CHECK: cbnz [[SUCCESS]], [[LABEL]] ; CHECK-NOT: dmb @@ -214,7 +214,7 @@ define void @atomic_store_relaxed(i128 %in, i128* %p) { ; CHECK-LABEL: atomic_store_relaxed: ; CHECK-NOT: dmb ; CHECK: [[LABEL:.?LBB[0-9]+_[0-9]+]]: -; CHECK: ldxp xzr, xzr, [x2] +; CHECK: ldxp xzr, [[IGNORED:x[0-9]+]], [x2] ; CHECK: stxp [[SUCCESS:w[0-9]+]], x0, x1, [x2] ; CHECK: cbnz [[SUCCESS]], [[LABEL]] ; CHECK-NOT: dmb |