[InstCombine] Signed saturation patterns
[llvm-complete.git] / test / CodeGen / AMDGPU / coalescer-subreg-join.mir
blobc5d7628233e2008497170f8b16f239bffaab57ad
1 # RUN: llc -march=amdgcn -run-pass simple-register-coalescing -o - %s | FileCheck %s
2 # Check that %11 and %20 have been coalesced.
3 # CHECK: IMAGE_SAMPLE_C_D_O_V1_V16 %[[REG:[0-9]+]]
4 # CHECK: IMAGE_SAMPLE_C_D_O_V1_V16 %[[REG]]
6 ---
7 name:            main
8 alignment:       1
9 tracksRegLiveness: true
10 registers:
11   - { id: 0, class: sreg_64 }
12   - { id: 1, class: vgpr_32 }
13   - { id: 2, class: vgpr_32 }
14   - { id: 3, class: sreg_256 }
15   - { id: 4, class: sgpr_128 }
16   - { id: 5, class: sreg_256 }
17   - { id: 6, class: sgpr_128 }
18   - { id: 7, class: sreg_512 }
19   - { id: 9, class: vreg_512 }
20   - { id: 11, class: vreg_512 }
21   - { id: 18, class: vgpr_32 }
22   - { id: 20, class: vreg_512 }
23   - { id: 27, class: vgpr_32 }
24 liveins:
25   - { reg: '$sgpr2_sgpr3', virtual-reg: '%0' }
26   - { reg: '$vgpr2', virtual-reg: '%1' }
27   - { reg: '$vgpr3', virtual-reg: '%2' }
28 frameInfo:
29   isFrameAddressTaken: false
30   isReturnAddressTaken: false
31   hasStackMap:     false
32   hasPatchPoint:   false
33   stackSize:       0
34   offsetAdjustment: 0
35   maxAlignment:    0
36   adjustsStack:    false
37   hasCalls:        false
38   maxCallFrameSize: 0
39   hasOpaqueSPAdjustment: false
40   hasVAStart:      false
41   hasMustTailInVarArgFunc: false
42 body:             |
43   bb.0:
44     liveins: $sgpr2_sgpr3, $vgpr2, $vgpr3
46     %0 = COPY $sgpr2_sgpr3
47     %1 = COPY $vgpr2
48     %2 = COPY $vgpr3
49     %3 = S_LOAD_DWORDX8_IMM %0, 0, 0, 0
50     %4 = S_LOAD_DWORDX4_IMM %0, 12, 0, 0
51     %5 = S_LOAD_DWORDX8_IMM %0, 16, 0, 0
52     %6 = S_LOAD_DWORDX4_IMM %0, 28, 0, 0
53     undef %7.sub0 = S_MOV_B32 212739
54     %20 = COPY %7
55     %11 = COPY %20
56     %11.sub1 = COPY %1
57     %11.sub2 = COPY %1
58     %11.sub3 = COPY %1
59     %11.sub4 = COPY %1
60     %11.sub5 = COPY %1
61     %11.sub6 = COPY %1
62     %11.sub7 = COPY %1
63     %11.sub8 = COPY %1
64     dead %18 = IMAGE_SAMPLE_C_D_O_V1_V16 %11, %3, %4, 1, 0, 0, 0, 0, 0, 0, -1, 0, implicit $exec
65     %20.sub1 = COPY %2
66     %20.sub2 = COPY %2
67     %20.sub3 = COPY %2
68     %20.sub4 = COPY %2
69     %20.sub5 = COPY %2
70     %20.sub6 = COPY %2
71     %20.sub7 = COPY %2
72     %20.sub8 = COPY %2
73     dead %27 = IMAGE_SAMPLE_C_D_O_V1_V16 %20, %5, %6, 1, 0, 0, 0, 0, 0, 0, -1, 0, implicit $exec
75 ...