121
|
1 # RUN: llc -march=amdgcn -verify-machineinstrs -run-pass si-shrink-instructions -o - %s | FileCheck -check-prefix=GCN %s
|
|
2 ...
|
|
3 # GCN-LABEL: name: fold_imm_non_ssa{{$}}
|
134
|
4 # GCN: %0:vgpr_32 = V_MOV_B32_e32 123, implicit $exec
|
|
5 # GCN: %2:vgpr_32 = V_ADD_I32_e32 456, %0, implicit-def $vcc, implicit $exec
|
121
|
6
|
|
7 name: fold_imm_non_ssa
|
|
8 tracksRegLiveness: true
|
|
9 registers:
|
|
10 - { id: 0, class: vgpr_32 }
|
|
11 - { id: 1, class: vgpr_32 }
|
|
12 - { id: 2, class: vgpr_32 }
|
|
13 - { id: 3, class: sreg_64 }
|
|
14 body: |
|
|
15 bb.0:
|
|
16 %0 = COPY undef %0
|
134
|
17 %0 = V_MOV_B32_e32 123, implicit $exec
|
|
18 %1 = V_MOV_B32_e32 456, implicit $exec
|
147
|
19 %2, $vcc = V_ADD_I32_e64 %0, %1, 0, implicit $exec
|
|
20 S_ENDPGM 0
|
121
|
21
|
|
22 ...
|
|
23 # GCN-LABEL: name: fold_partially_defined_superreg{{$}}
|
134
|
24 # GCN: %1:vgpr_32 = V_MOV_B32_e32 456, implicit $exec
|
|
25 # GCN: %2:vgpr_32 = V_ADD_I32_e32 123, %1, implicit-def $vcc, implicit $exec
|
121
|
26 name: fold_partially_defined_superreg
|
|
27 tracksRegLiveness: true
|
|
28 registers:
|
|
29 - { id: 0, class: vgpr_32 }
|
|
30 - { id: 1, class: vgpr_32 }
|
|
31 - { id: 2, class: vgpr_32 }
|
|
32 - { id: 3, class: vreg_64 }
|
|
33 body: |
|
|
34 bb.0:
|
134
|
35 undef %3.sub0 = V_MOV_B32_e32 123, implicit $exec, implicit-def %3
|
|
36 %1 = V_MOV_B32_e32 456, implicit $exec
|
147
|
37 %2, $vcc = V_ADD_I32_e64 %3.sub0, %1, 0, implicit $exec
|
|
38 S_ENDPGM 0
|
121
|
39
|
|
40 ...
|