1ce8b85c0SKang Zhang; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py 2ce8b85c0SKang Zhang; RUN: llc -mtriple=powerpc64le-linux-gnu < %s | FileCheck %s -check-prefix=PPC64LE 3ce8b85c0SKang Zhang 4ce8b85c0SKang Zhangdefine void @test(i8* %ptr, i8 %cmp, i8 %val) { 5ce8b85c0SKang Zhang; PPC64LE-LABEL: test: 6ce8b85c0SKang Zhang; PPC64LE: # %bb.0: 7*513976dfSKang Zhang; PPC64LE-NEXT: clrlwi 4, 4, 24 88633ef0fSKang Zhang; PPC64LE-NEXT: .LBB0_1: 9ce8b85c0SKang Zhang; PPC64LE-NEXT: lbarx 6, 0, 3 10ce8b85c0SKang Zhang; PPC64LE-NEXT: cmpw 4, 6 11ce8b85c0SKang Zhang; PPC64LE-NEXT: bne 0, .LBB0_3 128633ef0fSKang Zhang; PPC64LE-NEXT: # %bb.2: 13ce8b85c0SKang Zhang; PPC64LE-NEXT: stbcx. 5, 0, 3 14ce8b85c0SKang Zhang; PPC64LE-NEXT: beqlr 0 15ce8b85c0SKang Zhang; PPC64LE-NEXT: b .LBB0_1 16ce8b85c0SKang Zhang; PPC64LE-NEXT: .LBB0_3: 17ce8b85c0SKang Zhang; PPC64LE-NEXT: stbcx. 6, 0, 3 18ce8b85c0SKang Zhang; PPC64LE-NEXT: blr 19ce8b85c0SKang Zhang %res = cmpxchg i8* %ptr, i8 %cmp, i8 %val monotonic monotonic 20ce8b85c0SKang Zhang ret void 21ce8b85c0SKang Zhang} 22