diff options
| author | Hans Wennborg <hans@hanshq.net> | 2017-08-23 15:43:28 +0000 |
|---|---|---|
| committer | Hans Wennborg <hans@hanshq.net> | 2017-08-23 15:43:28 +0000 |
| commit | 66f6fc0a49231aee5a565822be46863ef6e4ed2d (patch) | |
| tree | 8280f342ab53171c634cd756f3b621a635fbfe96 /llvm/test/Transforms | |
| parent | b2c0794e307c69018e90d28ea602f628bf0b8e8d (diff) | |
| download | bcm5719-llvm-66f6fc0a49231aee5a565822be46863ef6e4ed2d.tar.gz bcm5719-llvm-66f6fc0a49231aee5a565822be46863ef6e4ed2d.zip | |
LowerAtomic: Don't skip optnone functions; atomic still need lowering (PR34020)
The lowering isn't really an optimization, so optnone shouldn't make a
difference. ARM relies on the pass running when using "-mthread-model
single", because in that mode, it doesn't run AtomicExpand. See bug for
more details.
Differential Revision: https://reviews.llvm.org/D37040
llvm-svn: 311565
Diffstat (limited to 'llvm/test/Transforms')
| -rw-r--r-- | llvm/test/Transforms/LowerAtomic/atomic-swap.ll | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/llvm/test/Transforms/LowerAtomic/atomic-swap.ll b/llvm/test/Transforms/LowerAtomic/atomic-swap.ll index 77000527a11..59a5caed481 100644 --- a/llvm/test/Transforms/LowerAtomic/atomic-swap.ll +++ b/llvm/test/Transforms/LowerAtomic/atomic-swap.ll @@ -26,3 +26,14 @@ define i8 @swap() { ret i8 %j ; CHECK: ret i8 [[INST]] } + + +define i8 @swap_optnone() noinline optnone { +; CHECK-LABEL: @swap_optnone( + %i = alloca i8 + %j = atomicrmw xchg i8* %i, i8 42 monotonic +; CHECK: [[INST:%[a-z0-9]+]] = load +; CHECK-NEXT: store + ret i8 %j +; CHECK: ret i8 [[INST]] +} |

