• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
2# RUN: llc -mtriple=aarch64-none-linux-gnu -run-pass none -o - %s | FileCheck %s
3
4--- |
5
6  define void @atomic_memoperands() {
7    ret void
8  }
9
10...
11---
12name:            atomic_memoperands
13body: |
14  bb.0:
15
16    ; CHECK-LABEL: name: atomic_memoperands
17    ; CHECK: [[COPY:%[0-9]+]]:_(p0) = COPY $x0
18    ; CHECK: [[LOAD:%[0-9]+]]:_(s64) = G_LOAD [[COPY]](p0) :: (load unordered 8)
19    ; CHECK: [[LOAD1:%[0-9]+]]:_(s32) = G_LOAD [[COPY]](p0) :: (load monotonic 4)
20    ; CHECK: [[LOAD2:%[0-9]+]]:_(s16) = G_LOAD [[COPY]](p0) :: (load acquire 2)
21    ; CHECK: G_STORE [[LOAD2]](s16), [[COPY]](p0) :: (store release 2)
22    ; CHECK: G_STORE [[LOAD1]](s32), [[COPY]](p0) :: (store acq_rel 4)
23    ; CHECK: G_STORE [[LOAD]](s64), [[COPY]](p0) :: (store syncscope("singlethread") seq_cst 8)
24    ; CHECK: RET_ReallyLR
25    %0:_(p0) = COPY $x0
26    %1:_(s64) = G_LOAD %0(p0) :: (load unordered 8)
27    %2:_(s32) = G_LOAD %0(p0) :: (load monotonic 4)
28    %3:_(s16) = G_LOAD %0(p0) :: (load acquire 2)
29    G_STORE %3(s16), %0(p0) :: (store release 2)
30    G_STORE %2(s32), %0(p0) :: (store acq_rel 4)
31    G_STORE %1(s64), %0(p0) :: (store syncscope("singlethread") seq_cst 8)
32    RET_ReallyLR
33...
34