# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
# RUN: llc -mtriple=aarch64-- -mattr=+lse -run-pass=legalizer -verify-machineinstrs %s -o - | FileCheck %s

--- |
  target datalayout = "e-m:o-i64:64-i128:128-n32:64-S128"

  define void @cmpxchg_i8(i8* %addr) { ret void }
  define void @cmpxchg_i16(i16* %addr) { ret void }
  define void @cmpxchg_i32(i32* %addr) { ret void }
  define void @cmpxchg_i64(i64* %addr) { ret void }
...

---
name:            cmpxchg_i8
body:             |
  bb.0:
    liveins: $x0

    ; CHECK-LABEL: name: cmpxchg_i8
    ; CHECK: [[COPY:%[0-9]+]]:_(p0) = COPY $x0
    ; CHECK: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 1
    ; CHECK: [[ATOMICRMW_ADD:%[0-9]+]]:_(s32) = G_ATOMICRMW_ADD [[COPY]](p0), [[C]] :: (load store monotonic (s8) on %ir.addr)
    ; CHECK: $w0 = COPY [[ATOMICRMW_ADD]](s32)
    %0:_(p0) = COPY $x0
    %1:_(s8) = G_CONSTANT i8 1
    %2:_(s8) = G_ATOMICRMW_ADD %0, %1 :: (load store monotonic (s8) on %ir.addr)
    %3:_(s32) = G_ANYEXT %2
    $w0 = COPY %3(s32)
...

---
name:            cmpxchg_i16
body:             |
  bb.0:
    liveins: $x0

    ; CHECK-LABEL: name: cmpxchg_i16
    ; CHECK: [[COPY:%[0-9]+]]:_(p0) = COPY $x0
    ; CHECK: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 1
    ; CHECK: [[ATOMICRMW_ADD:%[0-9]+]]:_(s32) = G_ATOMICRMW_ADD [[COPY]](p0), [[C]] :: (load store monotonic (s16) on %ir.addr)
    ; CHECK: $w0 = COPY [[ATOMICRMW_ADD]](s32)
    %0:_(p0) = COPY $x0
    %1:_(s16) = G_CONSTANT i16 1
    %2:_(s16) = G_ATOMICRMW_ADD %0, %1 :: (load store monotonic (s16) on %ir.addr)
    %3:_(s32) = G_ANYEXT %2
    $w0 = COPY %3(s32)
...

---
name:            cmpxchg_i32
body:             |
  bb.0:
    liveins: $x0

    ; CHECK-LABEL: name: cmpxchg_i32
    ; CHECK: [[COPY:%[0-9]+]]:_(p0) = COPY $x0
    ; CHECK: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 1
    ; CHECK: [[ATOMICRMW_ADD:%[0-9]+]]:_(s32) = G_ATOMICRMW_ADD [[COPY]](p0), [[C]] :: (load store monotonic (s32) on %ir.addr)
    ; CHECK: $w0 = COPY [[ATOMICRMW_ADD]](s32)
    %0:_(p0) = COPY $x0
    %1:_(s32) = G_CONSTANT i32 1
    %2:_(s32) = G_ATOMICRMW_ADD %0, %1 :: (load store monotonic (s32) on %ir.addr)
    $w0 = COPY %2(s32)
...

---
name:            cmpxchg_i64
body:             |
  bb.0:
    liveins: $x0

    ; CHECK-LABEL: name: cmpxchg_i64
    ; CHECK: [[COPY:%[0-9]+]]:_(p0) = COPY $x0
    ; CHECK: [[C:%[0-9]+]]:_(s64) = G_CONSTANT i64 1
    ; CHECK: [[ATOMICRMW_ADD:%[0-9]+]]:_(s64) = G_ATOMICRMW_ADD [[COPY]](p0), [[C]] :: (load store monotonic (s64) on %ir.addr)
    ; CHECK: $x0 = COPY [[ATOMICRMW_ADD]](s64)
    %0:_(p0) = COPY $x0
    %1:_(s64) = G_CONSTANT i64 1
    %2:_(s64) = G_ATOMICRMW_ADD %0, %1 :: (load store monotonic (s64) on %ir.addr)
    $x0 = COPY %2(s64)
...
