1 ; RUN: llvm-dis -o - %s.bc | FileCheck %s 2 3 ; Backwards compatibility test: make sure we can process bitcode without 4 ; synchronization scope names encoded in it. 5 6 ; CHECK: load atomic i32, i32* %x unordered, align 4 7 ; CHECK: load atomic volatile i32, i32* %x syncscope("singlethread") acquire, align 4 8 ; CHECK: store atomic i32 3, i32* %x release, align 4 9 ; CHECK: store atomic volatile i32 3, i32* %x syncscope("singlethread") monotonic, align 4 10 ; CHECK: cmpxchg i32* %x, i32 1, i32 0 syncscope("singlethread") monotonic monotonic 11 ; CHECK: cmpxchg volatile i32* %x, i32 0, i32 1 acq_rel acquire 12 ; CHECK: cmpxchg i32* %x, i32 42, i32 0 acq_rel monotonic 13 ; CHECK: cmpxchg weak i32* %x, i32 13, i32 0 seq_cst monotonic 14 ; CHECK: atomicrmw add i32* %x, i32 10 seq_cst 15 ; CHECK: atomicrmw volatile xchg i32* %x, i32 10 monotonic 16 ; CHECK: fence syncscope("singlethread") release 17 ; CHECK: fence seq_cst 18