Bump version to 19.1.0-rc3
[llvm-project.git] / llvm / test / CodeGen / AMDGPU / GlobalISel / regbankselect-zextload.mir
blobc2f219dd10cabf2e16c24531326dbaf2c14ab41b
1 # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
2 # RUN: llc -mtriple=amdgcn -mcpu=fiji -run-pass=amdgpu-regbankselect  -regbankselect-fast -verify-machineinstrs -o - %s | FileCheck %s
3 # RUN: llc -mtriple=amdgcn -mcpu=fiji -run-pass=amdgpu-regbankselect  -regbankselect-greedy -verify-machineinstrs -o - %s | FileCheck %s
5 ---
6 name: zextload_constant_i8_to_i32_uniform
7 legalized: true
9 body: |
10   bb.0:
11     liveins: $sgpr0_sgpr1
12     ; CHECK-LABEL: name: zextload_constant_i8_to_i32_uniform
13     ; CHECK: liveins: $sgpr0_sgpr1
14     ; CHECK-NEXT: {{  $}}
15     ; CHECK-NEXT: [[COPY:%[0-9]+]]:sgpr(p4) = COPY $sgpr0_sgpr1
16     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:vgpr(p4) = COPY [[COPY]](p4)
17     ; CHECK-NEXT: [[ZEXTLOAD:%[0-9]+]]:vgpr(s32) = G_ZEXTLOAD [[COPY1]](p4) :: (load (s8), addrspace 4)
18     %0:_(p4) = COPY $sgpr0_sgpr1
19     %1:_(s32) = G_ZEXTLOAD %0 :: (load (s8), addrspace 4, align 1)
20 ...
22 ---
23 name: zextload_global_i8_to_i32_uniform
24 legalized: true
26 body: |
27   bb.0:
28     liveins: $sgpr0_sgpr1
30     ; CHECK-LABEL: name: zextload_global_i8_to_i32_uniform
31     ; CHECK: liveins: $sgpr0_sgpr1
32     ; CHECK-NEXT: {{  $}}
33     ; CHECK-NEXT: [[COPY:%[0-9]+]]:sgpr(p4) = COPY $sgpr0_sgpr1
34     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:vgpr(p4) = COPY [[COPY]](p4)
35     ; CHECK-NEXT: [[ZEXTLOAD:%[0-9]+]]:vgpr(s32) = G_ZEXTLOAD [[COPY1]](p4) :: (load (s8), addrspace 1)
36     %0:_(p4) = COPY $sgpr0_sgpr1
37     %1:_(s32) = G_ZEXTLOAD %0 :: (load (s8), addrspace 1, align 1)
38 ...
40 ---
41 name: zextload_constant_i16_to_i32_uniform
42 legalized: true
44 body: |
45   bb.0:
46     liveins: $sgpr0_sgpr1
48     ; CHECK-LABEL: name: zextload_constant_i16_to_i32_uniform
49     ; CHECK: liveins: $sgpr0_sgpr1
50     ; CHECK-NEXT: {{  $}}
51     ; CHECK-NEXT: [[COPY:%[0-9]+]]:sgpr(p4) = COPY $sgpr0_sgpr1
52     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:vgpr(p4) = COPY [[COPY]](p4)
53     ; CHECK-NEXT: [[ZEXTLOAD:%[0-9]+]]:vgpr(s32) = G_ZEXTLOAD [[COPY1]](p4) :: (load (s16), addrspace 4)
54     %0:_(p4) = COPY $sgpr0_sgpr1
55     %1:_(s32) = G_ZEXTLOAD %0 :: (load (s16), addrspace 4, align 2)
56 ...
58 ---
59 name: zextload_global_i16_to_i32_uniform
60 legalized: true
62 body: |
63   bb.0:
64     liveins: $sgpr0_sgpr1
66     ; CHECK-LABEL: name: zextload_global_i16_to_i32_uniform
67     ; CHECK: liveins: $sgpr0_sgpr1
68     ; CHECK-NEXT: {{  $}}
69     ; CHECK-NEXT: [[COPY:%[0-9]+]]:sgpr(p4) = COPY $sgpr0_sgpr1
70     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:vgpr(p4) = COPY [[COPY]](p4)
71     ; CHECK-NEXT: [[ZEXTLOAD:%[0-9]+]]:vgpr(s32) = G_ZEXTLOAD [[COPY1]](p4) :: (load (s16), addrspace 1)
72     %0:_(p4) = COPY $sgpr0_sgpr1
73     %1:_(s32) = G_ZEXTLOAD %0 :: (load (s16), addrspace 1, align 2)
74 ...
76 ---
77 name: zextload_local_i8_to_i32_uniform
78 legalized: true
80 body: |
81   bb.0:
82     liveins: $sgpr0
83     ; CHECK-LABEL: name: zextload_local_i8_to_i32_uniform
84     ; CHECK: liveins: $sgpr0
85     ; CHECK-NEXT: {{  $}}
86     ; CHECK-NEXT: [[COPY:%[0-9]+]]:sgpr(p3) = COPY $sgpr0
87     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:vgpr(p3) = COPY [[COPY]](p3)
88     ; CHECK-NEXT: [[ZEXTLOAD:%[0-9]+]]:vgpr(s32) = G_ZEXTLOAD [[COPY1]](p3) :: (load (s8), addrspace 3)
89     %0:_(p3) = COPY $sgpr0
90     %1:_(s32) = G_ZEXTLOAD %0 :: (load (s8), addrspace 3, align 1)
91 ...
93 ---
94 name: zextload_local_i16_to_i32_uniform
95 legalized: true
97 body: |
98   bb.0:
99     liveins: $sgpr0
101     ; CHECK-LABEL: name: zextload_local_i16_to_i32_uniform
102     ; CHECK: liveins: $sgpr0
103     ; CHECK-NEXT: {{  $}}
104     ; CHECK-NEXT: [[COPY:%[0-9]+]]:sgpr(p3) = COPY $sgpr0
105     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:vgpr(p3) = COPY [[COPY]](p3)
106     ; CHECK-NEXT: [[ZEXTLOAD:%[0-9]+]]:vgpr(s32) = G_ZEXTLOAD [[COPY1]](p3) :: (load (s16), addrspace 3)
107     %0:_(p3) = COPY $sgpr0
108     %1:_(s32) = G_ZEXTLOAD %0 :: (load (s16), addrspace 3, align 2)