Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / llvm / test / CodeGen / AMDGPU / schedule-ilp-liveness-tracking.mir
blob4b6e204ecf9570e9f9e4a32177b6d21e73687151
1 # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py UTC_ARGS: --version 2
2 # RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx90a -amdgpu-enable-max-ilp-scheduling-strategy -verify-machineinstrs -run-pass=machine-scheduler -verify-misched -o - %s | FileCheck %s
4 ---
5 name:            max-ilp-liveness-tracking
6 tracksRegLiveness: true
7 body:             |
8   ; CHECK-LABEL: name: max-ilp-liveness-tracking
9   ; CHECK: bb.0:
10   ; CHECK-NEXT:   successors: %bb.1(0x80000000)
11   ; CHECK-NEXT: {{  $}}
12   ; CHECK-NEXT:   %src0:vgpr_32 = V_MOV_B32_e64 0, implicit $exec
13   ; CHECK-NEXT:   %src1:vgpr_32 = V_MOV_B32_e64 1, implicit $exec
14   ; CHECK-NEXT:   %live0:vgpr_32 = V_ADD_U32_e32 %src0, %src1, implicit $exec
15   ; CHECK-NEXT:   %live1:vgpr_32 = V_ADD_U32_e32 %live0, %src1, implicit $exec
16   ; CHECK-NEXT: {{  $}}
17   ; CHECK-NEXT: bb.1:
18   ; CHECK-NEXT:   %out0:vgpr_32 = V_ADD_U32_e32 %live0, %live1, implicit $exec
19   ; CHECK-NEXT:   dead %out1:vgpr_32 = V_ADD_U32_e32 %out0, %live1, implicit $exec
20   ; CHECK-NEXT:   S_ENDPGM 0
21   bb.0:
22     successors: %bb.1
23     %src0:vgpr_32 = V_MOV_B32_e64 0, implicit $exec
24     %src1:vgpr_32 = V_MOV_B32_e64 1, implicit $exec
25     %live0:vgpr_32 = V_ADD_U32_e32 %src0:vgpr_32, %src1:vgpr_32, implicit $exec
26     %live1:vgpr_32 = V_ADD_U32_e32 %live0:vgpr_32, %src1:vgpr_32, implicit $exec
28   bb.1:
29     %out0:vgpr_32 = V_ADD_U32_e32 %live0:vgpr_32, %live1:vgpr_32, implicit $exec
30     %out1:vgpr_32 = V_ADD_U32_e32 %out0:vgpr_32, %live1:vgpr_32, implicit $exec
31     S_ENDPGM 0
33 ...