; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
; RUN: llc -verify-machineinstrs < %s | FileCheck %s
target datalayout = "E-m:e-i64:64-n32:64"
target triple = "powerpc64-unknown-linux-gnu"

define void @a32min(ptr nocapture dereferenceable(4) %minimum, i32 %val) #0 {
; CHECK-LABEL: a32min:
; CHECK:       # %bb.0: # %entry
; CHECK-NEXT:  .LBB0_1: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    lwarx 5, 0, 3
; CHECK-NEXT:    cmpw 5, 4
; CHECK-NEXT:    bltlr 0
; CHECK-NEXT:  # %bb.2: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    stwcx. 4, 0, 3
; CHECK-NEXT:    bne 0, .LBB0_1
; CHECK-NEXT:  # %bb.3: # %entry
; CHECK-NEXT:    blr
entry:
  %0 = atomicrmw min ptr %minimum, i32 %val monotonic
  ret void

}

define void @a32max(ptr nocapture dereferenceable(4) %minimum, i32 %val) #0 {
; CHECK-LABEL: a32max:
; CHECK:       # %bb.0: # %entry
; CHECK-NEXT:  .LBB1_1: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    lwarx 5, 0, 3
; CHECK-NEXT:    cmpw 5, 4
; CHECK-NEXT:    bgtlr 0
; CHECK-NEXT:  # %bb.2: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    stwcx. 4, 0, 3
; CHECK-NEXT:    bne 0, .LBB1_1
; CHECK-NEXT:  # %bb.3: # %entry
; CHECK-NEXT:    blr
entry:
  %0 = atomicrmw max ptr %minimum, i32 %val monotonic
  ret void

}

define void @a32umin(ptr nocapture dereferenceable(4) %minimum, i32 %val) #0 {
; CHECK-LABEL: a32umin:
; CHECK:       # %bb.0: # %entry
; CHECK-NEXT:  .LBB2_1: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    lwarx 5, 0, 3
; CHECK-NEXT:    cmplw 5, 4
; CHECK-NEXT:    bltlr 0
; CHECK-NEXT:  # %bb.2: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    stwcx. 4, 0, 3
; CHECK-NEXT:    bne 0, .LBB2_1
; CHECK-NEXT:  # %bb.3: # %entry
; CHECK-NEXT:    blr
entry:
  %0 = atomicrmw umin ptr %minimum, i32 %val monotonic
  ret void

}

define void @a32umax(ptr nocapture dereferenceable(4) %minimum, i32 %val) #0 {
; CHECK-LABEL: a32umax:
; CHECK:       # %bb.0: # %entry
; CHECK-NEXT:  .LBB3_1: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    lwarx 5, 0, 3
; CHECK-NEXT:    cmplw 5, 4
; CHECK-NEXT:    bgtlr 0
; CHECK-NEXT:  # %bb.2: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    stwcx. 4, 0, 3
; CHECK-NEXT:    bne 0, .LBB3_1
; CHECK-NEXT:  # %bb.3: # %entry
; CHECK-NEXT:    blr
entry:
  %0 = atomicrmw umax ptr %minimum, i32 %val monotonic
  ret void

}

define void @a16min(ptr nocapture dereferenceable(4) %minimum, i16 %val) #1 {
; CHECK-LABEL: a16min:
; CHECK:       # %bb.0: # %entry
; CHECK-NEXT:    extsh 4, 4
; CHECK-NEXT:  .LBB4_1: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    lharx 5, 0, 3
; CHECK-NEXT:    extsh 5, 5
; CHECK-NEXT:    cmpw 5, 4
; CHECK-NEXT:    bltlr 0
; CHECK-NEXT:  # %bb.2: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    sthcx. 4, 0, 3
; CHECK-NEXT:    bne 0, .LBB4_1
; CHECK-NEXT:  # %bb.3: # %entry
; CHECK-NEXT:    blr
entry:
  %0 = atomicrmw min ptr %minimum, i16 %val monotonic
  ret void

}

define void @a16max(ptr nocapture dereferenceable(4) %minimum, i16 %val) #1 {
; CHECK-LABEL: a16max:
; CHECK:       # %bb.0: # %entry
; CHECK-NEXT:    extsh 4, 4
; CHECK-NEXT:  .LBB5_1: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    lharx 5, 0, 3
; CHECK-NEXT:    extsh 5, 5
; CHECK-NEXT:    cmpw 5, 4
; CHECK-NEXT:    bgtlr 0
; CHECK-NEXT:  # %bb.2: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    sthcx. 4, 0, 3
; CHECK-NEXT:    bne 0, .LBB5_1
; CHECK-NEXT:  # %bb.3: # %entry
; CHECK-NEXT:    blr
entry:
  %0 = atomicrmw max ptr %minimum, i16 %val monotonic
  ret void

}

define void @a16umin(ptr nocapture dereferenceable(4) %minimum, i16 %val) #1 {
; CHECK-LABEL: a16umin:
; CHECK:       # %bb.0: # %entry
; CHECK-NEXT:  .LBB6_1: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    lharx 5, 0, 3
; CHECK-NEXT:    cmplw 5, 4
; CHECK-NEXT:    bltlr 0
; CHECK-NEXT:  # %bb.2: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    sthcx. 4, 0, 3
; CHECK-NEXT:    bne 0, .LBB6_1
; CHECK-NEXT:  # %bb.3: # %entry
; CHECK-NEXT:    blr
entry:
  %0 = atomicrmw umin ptr %minimum, i16 %val monotonic
  ret void

}

define void @a16umax(ptr nocapture dereferenceable(4) %minimum, i16 %val) #1 {
; CHECK-LABEL: a16umax:
; CHECK:       # %bb.0: # %entry
; CHECK-NEXT:  .LBB7_1: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    lharx 5, 0, 3
; CHECK-NEXT:    cmplw 5, 4
; CHECK-NEXT:    bgtlr 0
; CHECK-NEXT:  # %bb.2: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    sthcx. 4, 0, 3
; CHECK-NEXT:    bne 0, .LBB7_1
; CHECK-NEXT:  # %bb.3: # %entry
; CHECK-NEXT:    blr
entry:
  %0 = atomicrmw umax ptr %minimum, i16 %val monotonic
  ret void

}

define void @a8min(ptr nocapture dereferenceable(4) %minimum, i8 %val) #1 {
; CHECK-LABEL: a8min:
; CHECK:       # %bb.0: # %entry
; CHECK-NEXT:    extsb 4, 4
; CHECK-NEXT:  .LBB8_1: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    lbarx 5, 0, 3
; CHECK-NEXT:    extsb 5, 5
; CHECK-NEXT:    cmpw 5, 4
; CHECK-NEXT:    bltlr 0
; CHECK-NEXT:  # %bb.2: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    stbcx. 4, 0, 3
; CHECK-NEXT:    bne 0, .LBB8_1
; CHECK-NEXT:  # %bb.3: # %entry
; CHECK-NEXT:    blr
entry:
  %0 = atomicrmw min ptr %minimum, i8 %val monotonic
  ret void

}

define void @a8max(ptr nocapture dereferenceable(4) %minimum, i8 %val) #1 {
; CHECK-LABEL: a8max:
; CHECK:       # %bb.0: # %entry
; CHECK-NEXT:    extsb 4, 4
; CHECK-NEXT:  .LBB9_1: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    lbarx 5, 0, 3
; CHECK-NEXT:    extsb 5, 5
; CHECK-NEXT:    cmpw 5, 4
; CHECK-NEXT:    bgtlr 0
; CHECK-NEXT:  # %bb.2: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    stbcx. 4, 0, 3
; CHECK-NEXT:    bne 0, .LBB9_1
; CHECK-NEXT:  # %bb.3: # %entry
; CHECK-NEXT:    blr
entry:
  %0 = atomicrmw max ptr %minimum, i8 %val monotonic
  ret void

}

define void @a8umin(ptr nocapture dereferenceable(4) %minimum, i8 %val) #1 {
; CHECK-LABEL: a8umin:
; CHECK:       # %bb.0: # %entry
; CHECK-NEXT:  .LBB10_1: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    lbarx 5, 0, 3
; CHECK-NEXT:    cmplw 5, 4
; CHECK-NEXT:    bltlr 0
; CHECK-NEXT:  # %bb.2: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    stbcx. 4, 0, 3
; CHECK-NEXT:    bne 0, .LBB10_1
; CHECK-NEXT:  # %bb.3: # %entry
; CHECK-NEXT:    blr
entry:
  %0 = atomicrmw umin ptr %minimum, i8 %val monotonic
  ret void

}

define void @a8umax(ptr nocapture dereferenceable(4) %minimum, i8 %val) #1 {
; CHECK-LABEL: a8umax:
; CHECK:       # %bb.0: # %entry
; CHECK-NEXT:  .LBB11_1: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    lbarx 5, 0, 3
; CHECK-NEXT:    cmplw 5, 4
; CHECK-NEXT:    bgtlr 0
; CHECK-NEXT:  # %bb.2: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    stbcx. 4, 0, 3
; CHECK-NEXT:    bne 0, .LBB11_1
; CHECK-NEXT:  # %bb.3: # %entry
; CHECK-NEXT:    blr
entry:
  %0 = atomicrmw umax ptr %minimum, i8 %val monotonic
  ret void

}

define void @a64min(ptr nocapture dereferenceable(4) %minimum, i64 %val) #0 {
; CHECK-LABEL: a64min:
; CHECK:       # %bb.0: # %entry
; CHECK-NEXT:  .LBB12_1: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    ldarx 5, 0, 3
; CHECK-NEXT:    cmpd 5, 4
; CHECK-NEXT:    bltlr 0
; CHECK-NEXT:  # %bb.2: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    stdcx. 4, 0, 3
; CHECK-NEXT:    bne 0, .LBB12_1
; CHECK-NEXT:  # %bb.3: # %entry
; CHECK-NEXT:    blr
entry:
  %0 = atomicrmw min ptr %minimum, i64 %val monotonic
  ret void

}

define void @a64max(ptr nocapture dereferenceable(4) %minimum, i64 %val) #0 {
; CHECK-LABEL: a64max:
; CHECK:       # %bb.0: # %entry
; CHECK-NEXT:  .LBB13_1: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    ldarx 5, 0, 3
; CHECK-NEXT:    cmpd 5, 4
; CHECK-NEXT:    bgtlr 0
; CHECK-NEXT:  # %bb.2: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    stdcx. 4, 0, 3
; CHECK-NEXT:    bne 0, .LBB13_1
; CHECK-NEXT:  # %bb.3: # %entry
; CHECK-NEXT:    blr
entry:
  %0 = atomicrmw max ptr %minimum, i64 %val monotonic
  ret void

}

define void @a64umin(ptr nocapture dereferenceable(4) %minimum, i64 %val) #0 {
; CHECK-LABEL: a64umin:
; CHECK:       # %bb.0: # %entry
; CHECK-NEXT:  .LBB14_1: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    ldarx 5, 0, 3
; CHECK-NEXT:    cmpld 5, 4
; CHECK-NEXT:    bltlr 0
; CHECK-NEXT:  # %bb.2: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    stdcx. 4, 0, 3
; CHECK-NEXT:    bne 0, .LBB14_1
; CHECK-NEXT:  # %bb.3: # %entry
; CHECK-NEXT:    blr
entry:
  %0 = atomicrmw umin ptr %minimum, i64 %val monotonic
  ret void

}

define void @a64umax(ptr nocapture dereferenceable(4) %minimum, i64 %val) #0 {
; CHECK-LABEL: a64umax:
; CHECK:       # %bb.0: # %entry
; CHECK-NEXT:  .LBB15_1: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    ldarx 5, 0, 3
; CHECK-NEXT:    cmpld 5, 4
; CHECK-NEXT:    bgtlr 0
; CHECK-NEXT:  # %bb.2: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    stdcx. 4, 0, 3
; CHECK-NEXT:    bne 0, .LBB15_1
; CHECK-NEXT:  # %bb.3: # %entry
; CHECK-NEXT:    blr
entry:
  %0 = atomicrmw umax ptr %minimum, i64 %val monotonic
  ret void

}

define void @ae16min(ptr nocapture dereferenceable(4) %minimum, i16 %val) #0 {
; CHECK-LABEL: ae16min:
; CHECK:       # %bb.0: # %entry
; CHECK-NEXT:    li 5, 0
; CHECK-NEXT:    rlwinm 6, 3, 3, 27, 27
; CHECK-NEXT:    extsh 4, 4
; CHECK-NEXT:    ori 7, 5, 65535
; CHECK-NEXT:    xori 5, 6, 16
; CHECK-NEXT:    rldicr 3, 3, 0, 61
; CHECK-NEXT:    slw 8, 4, 5
; CHECK-NEXT:    slw 6, 7, 5
; CHECK-NEXT:    and 7, 8, 6
; CHECK-NEXT:  .LBB16_1: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    lwarx 8, 0, 3
; CHECK-NEXT:    and 9, 8, 6
; CHECK-NEXT:    srw 9, 9, 5
; CHECK-NEXT:    extsh 9, 9
; CHECK-NEXT:    cmpw 9, 4
; CHECK-NEXT:    bltlr 0
; CHECK-NEXT:  # %bb.2: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    andc 8, 8, 6
; CHECK-NEXT:    or 8, 7, 8
; CHECK-NEXT:    stwcx. 8, 0, 3
; CHECK-NEXT:    bne 0, .LBB16_1
; CHECK-NEXT:  # %bb.3: # %entry
; CHECK-NEXT:    blr
entry:
  %0 = atomicrmw min ptr %minimum, i16 %val monotonic
  ret void

}

define void @ae16max(ptr nocapture dereferenceable(4) %minimum, i16 %val) #0 {
; CHECK-LABEL: ae16max:
; CHECK:       # %bb.0: # %entry
; CHECK-NEXT:    li 5, 0
; CHECK-NEXT:    rlwinm 6, 3, 3, 27, 27
; CHECK-NEXT:    extsh 4, 4
; CHECK-NEXT:    ori 7, 5, 65535
; CHECK-NEXT:    xori 5, 6, 16
; CHECK-NEXT:    rldicr 3, 3, 0, 61
; CHECK-NEXT:    slw 8, 4, 5
; CHECK-NEXT:    slw 6, 7, 5
; CHECK-NEXT:    and 7, 8, 6
; CHECK-NEXT:  .LBB17_1: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    lwarx 8, 0, 3
; CHECK-NEXT:    and 9, 8, 6
; CHECK-NEXT:    srw 9, 9, 5
; CHECK-NEXT:    extsh 9, 9
; CHECK-NEXT:    cmpw 9, 4
; CHECK-NEXT:    bgtlr 0
; CHECK-NEXT:  # %bb.2: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    andc 8, 8, 6
; CHECK-NEXT:    or 8, 7, 8
; CHECK-NEXT:    stwcx. 8, 0, 3
; CHECK-NEXT:    bne 0, .LBB17_1
; CHECK-NEXT:  # %bb.3: # %entry
; CHECK-NEXT:    blr
entry:
  %0 = atomicrmw max ptr %minimum, i16 %val monotonic
  ret void

}

define void @ae16umin(ptr nocapture dereferenceable(4) %minimum, i16 %val) #0 {
; CHECK-LABEL: ae16umin:
; CHECK:       # %bb.0: # %entry
; CHECK-NEXT:    li 5, 0
; CHECK-NEXT:    rlwinm 6, 3, 3, 27, 27
; CHECK-NEXT:    ori 5, 5, 65535
; CHECK-NEXT:    xori 6, 6, 16
; CHECK-NEXT:    slw 4, 4, 6
; CHECK-NEXT:    slw 5, 5, 6
; CHECK-NEXT:    rldicr 3, 3, 0, 61
; CHECK-NEXT:    and 6, 4, 5
; CHECK-NEXT:  .LBB18_1: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    lwarx 7, 0, 3
; CHECK-NEXT:    and 8, 7, 5
; CHECK-NEXT:    cmplw 8, 4
; CHECK-NEXT:    bltlr 0
; CHECK-NEXT:  # %bb.2: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    andc 7, 7, 5
; CHECK-NEXT:    or 7, 6, 7
; CHECK-NEXT:    stwcx. 7, 0, 3
; CHECK-NEXT:    bne 0, .LBB18_1
; CHECK-NEXT:  # %bb.3: # %entry
; CHECK-NEXT:    blr
entry:
  %0 = atomicrmw umin ptr %minimum, i16 %val monotonic
  ret void

}

define void @ae16umax(ptr nocapture dereferenceable(4) %minimum, i16 %val) #0 {
; CHECK-LABEL: ae16umax:
; CHECK:       # %bb.0: # %entry
; CHECK-NEXT:    li 5, 0
; CHECK-NEXT:    rlwinm 6, 3, 3, 27, 27
; CHECK-NEXT:    ori 5, 5, 65535
; CHECK-NEXT:    xori 6, 6, 16
; CHECK-NEXT:    slw 4, 4, 6
; CHECK-NEXT:    slw 5, 5, 6
; CHECK-NEXT:    rldicr 3, 3, 0, 61
; CHECK-NEXT:    and 6, 4, 5
; CHECK-NEXT:  .LBB19_1: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    lwarx 7, 0, 3
; CHECK-NEXT:    and 8, 7, 5
; CHECK-NEXT:    cmplw 8, 4
; CHECK-NEXT:    bgtlr 0
; CHECK-NEXT:  # %bb.2: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    andc 7, 7, 5
; CHECK-NEXT:    or 7, 6, 7
; CHECK-NEXT:    stwcx. 7, 0, 3
; CHECK-NEXT:    bne 0, .LBB19_1
; CHECK-NEXT:  # %bb.3: # %entry
; CHECK-NEXT:    blr
entry:
  %0 = atomicrmw umax ptr %minimum, i16 %val monotonic
  ret void

}

define void @ae8min(ptr nocapture dereferenceable(4) %minimum, i8 %val) #0 {
; CHECK-LABEL: ae8min:
; CHECK:       # %bb.0: # %entry
; CHECK-NEXT:    rlwinm 5, 3, 3, 27, 28
; CHECK-NEXT:    li 6, 255
; CHECK-NEXT:    extsb 4, 4
; CHECK-NEXT:    xori 5, 5, 24
; CHECK-NEXT:    slw 7, 4, 5
; CHECK-NEXT:    slw 6, 6, 5
; CHECK-NEXT:    rldicr 3, 3, 0, 61
; CHECK-NEXT:    and 7, 7, 6
; CHECK-NEXT:  .LBB20_1: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    lwarx 8, 0, 3
; CHECK-NEXT:    and 9, 8, 6
; CHECK-NEXT:    srw 9, 9, 5
; CHECK-NEXT:    extsb 9, 9
; CHECK-NEXT:    cmpw 9, 4
; CHECK-NEXT:    bltlr 0
; CHECK-NEXT:  # %bb.2: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    andc 8, 8, 6
; CHECK-NEXT:    or 8, 7, 8
; CHECK-NEXT:    stwcx. 8, 0, 3
; CHECK-NEXT:    bne 0, .LBB20_1
; CHECK-NEXT:  # %bb.3: # %entry
; CHECK-NEXT:    blr
entry:
  %0 = atomicrmw min ptr %minimum, i8 %val monotonic
  ret void

}

define void @ae8max(ptr nocapture dereferenceable(4) %minimum, i8 %val) #0 {
; CHECK-LABEL: ae8max:
; CHECK:       # %bb.0: # %entry
; CHECK-NEXT:    rlwinm 5, 3, 3, 27, 28
; CHECK-NEXT:    li 6, 255
; CHECK-NEXT:    extsb 4, 4
; CHECK-NEXT:    xori 5, 5, 24
; CHECK-NEXT:    slw 7, 4, 5
; CHECK-NEXT:    slw 6, 6, 5
; CHECK-NEXT:    rldicr 3, 3, 0, 61
; CHECK-NEXT:    and 7, 7, 6
; CHECK-NEXT:  .LBB21_1: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    lwarx 8, 0, 3
; CHECK-NEXT:    and 9, 8, 6
; CHECK-NEXT:    srw 9, 9, 5
; CHECK-NEXT:    extsb 9, 9
; CHECK-NEXT:    cmpw 9, 4
; CHECK-NEXT:    bgtlr 0
; CHECK-NEXT:  # %bb.2: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    andc 8, 8, 6
; CHECK-NEXT:    or 8, 7, 8
; CHECK-NEXT:    stwcx. 8, 0, 3
; CHECK-NEXT:    bne 0, .LBB21_1
; CHECK-NEXT:  # %bb.3: # %entry
; CHECK-NEXT:    blr
entry:
  %0 = atomicrmw max ptr %minimum, i8 %val monotonic
  ret void

}

define void @ae8umin(ptr nocapture dereferenceable(4) %minimum, i8 %val) #0 {
; CHECK-LABEL: ae8umin:
; CHECK:       # %bb.0: # %entry
; CHECK-NEXT:    rlwinm 6, 3, 3, 27, 28
; CHECK-NEXT:    li 5, 255
; CHECK-NEXT:    xori 6, 6, 24
; CHECK-NEXT:    rldicr 3, 3, 0, 61
; CHECK-NEXT:    slw 4, 4, 6
; CHECK-NEXT:    slw 5, 5, 6
; CHECK-NEXT:    and 6, 4, 5
; CHECK-NEXT:  .LBB22_1: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    lwarx 7, 0, 3
; CHECK-NEXT:    and 8, 7, 5
; CHECK-NEXT:    cmplw 8, 4
; CHECK-NEXT:    bltlr 0
; CHECK-NEXT:  # %bb.2: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    andc 7, 7, 5
; CHECK-NEXT:    or 7, 6, 7
; CHECK-NEXT:    stwcx. 7, 0, 3
; CHECK-NEXT:    bne 0, .LBB22_1
; CHECK-NEXT:  # %bb.3: # %entry
; CHECK-NEXT:    blr
entry:
  %0 = atomicrmw umin ptr %minimum, i8 %val monotonic
  ret void

}

define void @ae8umax(ptr nocapture dereferenceable(4) %minimum, i8 %val) #0 {
; CHECK-LABEL: ae8umax:
; CHECK:       # %bb.0: # %entry
; CHECK-NEXT:    rlwinm 6, 3, 3, 27, 28
; CHECK-NEXT:    li 5, 255
; CHECK-NEXT:    xori 6, 6, 24
; CHECK-NEXT:    rldicr 3, 3, 0, 61
; CHECK-NEXT:    slw 4, 4, 6
; CHECK-NEXT:    slw 5, 5, 6
; CHECK-NEXT:    and 6, 4, 5
; CHECK-NEXT:  .LBB23_1: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    lwarx 7, 0, 3
; CHECK-NEXT:    and 8, 7, 5
; CHECK-NEXT:    cmplw 8, 4
; CHECK-NEXT:    bgtlr 0
; CHECK-NEXT:  # %bb.2: # %entry
; CHECK-NEXT:    #
; CHECK-NEXT:    andc 7, 7, 5
; CHECK-NEXT:    or 7, 6, 7
; CHECK-NEXT:    stwcx. 7, 0, 3
; CHECK-NEXT:    bne 0, .LBB23_1
; CHECK-NEXT:  # %bb.3: # %entry
; CHECK-NEXT:    blr
entry:
  %0 = atomicrmw umax ptr %minimum, i8 %val monotonic
  ret void

}

attributes #0 = { nounwind "target-cpu"="ppc64" }
attributes #1 = { nounwind "target-cpu"="pwr8" }

