Home | History | Annotate | Download | only in X86
      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
     11 ; CHECK-NEXT: cmpxchgb
     12 ; CHECK: jne [[LABEL1]]
     13   %2 = atomicrmw min  i8* @sc8, i8 6 acquire
     14 ; CHECK: [[LABEL3:\.?LBB[0-9]+_[0-9]+]]:
     15 ; CHECK: movsbl
     16 ; CHECK: cmpl
     17 ; CHECK: lock
     18 ; CHECK-NEXT: cmpxchgb
     19 ; CHECK: jne [[LABEL3]]
     20   %3 = atomicrmw umax i8* @sc8, i8 7 acquire
     21 ; CHECK: [[LABEL5:\.?LBB[0-9]+_[0-9]+]]:
     22 ; CHECK: movzbl
     23 ; CHECK: cmpl
     24 ; CHECK: lock
     25 ; CHECK-NEXT: cmpxchgb
     26 ; CHECK: jne [[LABEL5]]
     27   %4 = atomicrmw umin i8* @sc8, i8 8 acquire
     28 ; CHECK: [[LABEL7:\.?LBB[0-9]+_[0-9]+]]:
     29 ; CHECK: movzbl
     30 ; CHECK: cmpl
     31 ; CHECK: lock
     32 ; CHECK-NEXT: cmpxchgb
     33 ; CHECK: jne [[LABEL7]]
     34   ret void
     35 }
     36