1 ; RUN: llc -march=x86-64 < %s | FileCheck %s 2 @sc8 = external global i8 3 4 define void @atomic_maxmin_i8() { 5 ; CHECK: atomic_maxmin_i8 6 %1 = atomicrmw max i8* @sc8, i8 5 acquire 7 ; CHECK: [[LABEL1:\.?LBB[0-9]+_[0-9]+]]: 8 ; CHECK: movsbl 9 ; CHECK: cmpl 10 ; CHECK: lock cmpxchgb 11 ; CHECK: jne [[LABEL1]] 12 %2 = atomicrmw min i8* @sc8, i8 6 acquire 13 ; CHECK: [[LABEL3:\.?LBB[0-9]+_[0-9]+]]: 14 ; CHECK: movsbl 15 ; CHECK: cmpl 16 ; CHECK: lock cmpxchgb 17 ; CHECK: jne [[LABEL3]] 18 %3 = atomicrmw umax i8* @sc8, i8 7 acquire 19 ; CHECK: [[LABEL5:\.?LBB[0-9]+_[0-9]+]]: 20 ; CHECK: movzbl 21 ; CHECK: cmpl 22 ; CHECK: lock cmpxchgb 23 ; CHECK: jne [[LABEL5]] 24 %4 = atomicrmw umin i8* @sc8, i8 8 acquire 25 ; CHECK: [[LABEL7:\.?LBB[0-9]+_[0-9]+]]: 26 ; CHECK: movzbl 27 ; CHECK: cmpl 28 ; CHECK: lock cmpxchgb 29 ; CHECK: jne [[LABEL7]] 30 ret void 31 } 32