Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / llvm / test / CodeGen / Mips / GlobalISel / legalizer / fence.mir
blobd2074542cb5bdd15f5d2cb5b416a4c0438dd61ab
1 # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
2 # RUN: llc -O0 -mtriple=mipsel-linux-gnu -run-pass=legalizer -verify-machineinstrs %s -o - | FileCheck %s -check-prefixes=MIPS32
3 --- |
5   define void @atomic_load_i32(ptr %ptr) { ret void }
7 ...
8 ---
9 name:            atomic_load_i32
10 alignment:       4
11 tracksRegLiveness: true
12 body:             |
13   bb.1 (%ir-block.0):
14     liveins: $a0
16     ; MIPS32-LABEL: name: atomic_load_i32
17     ; MIPS32: liveins: $a0
18     ; MIPS32: [[COPY:%[0-9]+]]:_(p0) = COPY $a0
19     ; MIPS32: [[LOAD:%[0-9]+]]:_(s32) = G_LOAD [[COPY]](p0) :: (load monotonic (s32) from %ir.ptr)
20     ; MIPS32: G_FENCE 4, 1
21     ; MIPS32: $v0 = COPY [[LOAD]](s32)
22     ; MIPS32: RetRA implicit $v0
23     %0:_(p0) = COPY $a0
24     %1:_(s32) = G_LOAD %0(p0) :: (load monotonic (s32) from %ir.ptr)
25     G_FENCE 4, 1
26     $v0 = COPY %1(s32)
27     RetRA implicit $v0
29 ...