; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py ; RUN: llc -mtriple=powerpc64le-linux-gnu < %s | FileCheck %s -check-prefix=PPC64LE define void @test(ptr %ptr, i8 %cmp, i8 %val) { ; PPC64LE-LABEL: test: ; PPC64LE: # %bb.0: ; PPC64LE-NEXT: clrlwi 5, 5, 24 ; PPC64LE-NEXT: clrlwi 4, 4, 24 ; PPC64LE-NEXT: .p2align 5 ; PPC64LE-NEXT: .LBB0_1: # %cmpxchg.start ; PPC64LE-NEXT: # ; PPC64LE-NEXT: lbarx 6, 0, 3 ; PPC64LE-NEXT: cmplw 6, 4 ; PPC64LE-NEXT: bnelr 0 ; PPC64LE-NEXT: # %bb.2: # %cmpxchg.fencedstore ; PPC64LE-NEXT: # ; PPC64LE-NEXT: stbcx. 5, 0, 3 ; PPC64LE-NEXT: bne 0, .LBB0_1 ; PPC64LE-NEXT: # %bb.3: # %cmpxchg.end ; PPC64LE-NEXT: blr %res = cmpxchg ptr %ptr, i8 %cmp, i8 %val monotonic monotonic ret void }