xref: /llvm-project/llvm/test/Bitcode/cmpxchg-upgrade.ll (revision e45cf479231fc144b4e1eb8b3e3bd2f578b6907d)
1; RUN: llvm-dis < %s.bc | FileCheck %s
2; RUN: verify-uselistorder < %s.bc
3
4; cmpxchg-upgrade.ll.bc was produced by running a version of llvm-as from just
5; before the IR change on this file.
6
7define void @test(i32* %addr) {
8   cmpxchg i32* %addr, i32 42, i32 0 monotonic
9; CHECK: cmpxchg ptr %addr, i32 42, i32 0 monotonic monotonic
10
11   cmpxchg i32* %addr, i32 42, i32 0 acquire
12; CHECK: cmpxchg ptr %addr, i32 42, i32 0 acquire acquire
13
14   cmpxchg i32* %addr, i32 42, i32 0 release
15; CHECK: cmpxchg ptr %addr, i32 42, i32 0 release monotonic
16
17   cmpxchg i32* %addr, i32 42, i32 0 acq_rel
18; CHECK: cmpxchg ptr %addr, i32 42, i32 0 acq_rel acquire
19
20   cmpxchg i32* %addr, i32 42, i32 0 seq_cst
21; CHECK: cmpxchg ptr %addr, i32 42, i32 0 seq_cst seq_cst
22
23   ret void
24}
25