261 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=amdgcn -run-pass=regbankselect %s -verify-machineinstrs -o - -regbankselect-fast | FileCheck %s3# RUN: llc -mtriple=amdgcn -run-pass=regbankselect %s -verify-machineinstrs -o - -regbankselect-greedy | FileCheck %s4# RUN: llc -mtriple=amdgcn -mcpu=fiji -run-pass="amdgpu-regbankselect,amdgpu-regbanklegalize" %s -verify-machineinstrs -o - | FileCheck %s5 6---7name: inttoptr_s_p08legalized: true9 10body: |11 bb.0:12 liveins: $sgpr0_sgpr113 ; CHECK-LABEL: name: inttoptr_s_p014 ; CHECK: liveins: $sgpr0_sgpr115 ; CHECK-NEXT: {{ $}}16 ; CHECK-NEXT: [[COPY:%[0-9]+]]:sgpr(s64) = COPY $sgpr0_sgpr117 ; CHECK-NEXT: [[INTTOPTR:%[0-9]+]]:sgpr(p0) = G_INTTOPTR [[COPY]](s64)18 %0:_(s64) = COPY $sgpr0_sgpr119 %1:_(p0) = G_INTTOPTR %020...21 22---23name: inttoptr_v_p024legalized: true25 26body: |27 bb.0:28 liveins: $vgpr0_vgpr129 ; CHECK-LABEL: name: inttoptr_v_p030 ; CHECK: liveins: $vgpr0_vgpr131 ; CHECK-NEXT: {{ $}}32 ; CHECK-NEXT: [[COPY:%[0-9]+]]:vgpr(s64) = COPY $vgpr0_vgpr133 ; CHECK-NEXT: [[INTTOPTR:%[0-9]+]]:vgpr(p0) = G_INTTOPTR [[COPY]](s64)34 %0:_(s64) = COPY $vgpr0_vgpr135 %1:_(p0) = G_INTTOPTR %036...37 38---39name: inttoptr_s_p140legalized: true41 42body: |43 bb.0:44 liveins: $sgpr0_sgpr145 ; CHECK-LABEL: name: inttoptr_s_p146 ; CHECK: liveins: $sgpr0_sgpr147 ; CHECK-NEXT: {{ $}}48 ; CHECK-NEXT: [[COPY:%[0-9]+]]:sgpr(s64) = COPY $sgpr0_sgpr149 ; CHECK-NEXT: [[INTTOPTR:%[0-9]+]]:sgpr(p1) = G_INTTOPTR [[COPY]](s64)50 %0:_(s64) = COPY $sgpr0_sgpr151 %1:_(p1) = G_INTTOPTR %052...53 54---55name: inttoptr_v_p156legalized: true57 58body: |59 bb.0:60 liveins: $vgpr0_vgpr161 ; CHECK-LABEL: name: inttoptr_v_p162 ; CHECK: liveins: $vgpr0_vgpr163 ; CHECK-NEXT: {{ $}}64 ; CHECK-NEXT: [[COPY:%[0-9]+]]:vgpr(s64) = COPY $vgpr0_vgpr165 ; CHECK-NEXT: [[INTTOPTR:%[0-9]+]]:vgpr(p1) = G_INTTOPTR [[COPY]](s64)66 %0:_(s64) = COPY $vgpr0_vgpr167 %1:_(p1) = G_INTTOPTR %068...69 70---71name: inttoptr_s_p272legalized: true73 74body: |75 bb.0:76 liveins: $sgpr077 ; CHECK-LABEL: name: inttoptr_s_p278 ; CHECK: liveins: $sgpr079 ; CHECK-NEXT: {{ $}}80 ; CHECK-NEXT: [[COPY:%[0-9]+]]:sgpr(s32) = COPY $sgpr081 ; CHECK-NEXT: [[INTTOPTR:%[0-9]+]]:sgpr(p2) = G_INTTOPTR [[COPY]](s32)82 %0:_(s32) = COPY $sgpr083 %1:_(p2) = G_INTTOPTR %084...85 86---87name: inttoptr_v_p288legalized: true89 90body: |91 bb.0:92 liveins: $vgpr093 ; CHECK-LABEL: name: inttoptr_v_p294 ; CHECK: liveins: $vgpr095 ; CHECK-NEXT: {{ $}}96 ; CHECK-NEXT: [[COPY:%[0-9]+]]:vgpr(s32) = COPY $vgpr097 ; CHECK-NEXT: [[INTTOPTR:%[0-9]+]]:vgpr(p2) = G_INTTOPTR [[COPY]](s32)98 %0:_(s32) = COPY $vgpr099 %1:_(p2) = G_INTTOPTR %0100...101 102---103name: inttoptr_s_p3104legalized: true105 106body: |107 bb.0:108 liveins: $sgpr0109 ; CHECK-LABEL: name: inttoptr_s_p3110 ; CHECK: liveins: $sgpr0111 ; CHECK-NEXT: {{ $}}112 ; CHECK-NEXT: [[COPY:%[0-9]+]]:sgpr(s32) = COPY $sgpr0113 ; CHECK-NEXT: [[INTTOPTR:%[0-9]+]]:sgpr(p3) = G_INTTOPTR [[COPY]](s32)114 %0:_(s32) = COPY $sgpr0115 %1:_(p3) = G_INTTOPTR %0116...117 118---119name: inttoptr_v_p3120legalized: true121 122body: |123 bb.0:124 liveins: $vgpr0125 ; CHECK-LABEL: name: inttoptr_v_p3126 ; CHECK: liveins: $vgpr0127 ; CHECK-NEXT: {{ $}}128 ; CHECK-NEXT: [[COPY:%[0-9]+]]:vgpr(s32) = COPY $vgpr0129 ; CHECK-NEXT: [[INTTOPTR:%[0-9]+]]:vgpr(p3) = G_INTTOPTR [[COPY]](s32)130 %0:_(s32) = COPY $vgpr0131 %1:_(p3) = G_INTTOPTR %0132...133 134---135name: inttoptr_s_p4136legalized: true137 138body: |139 bb.0:140 liveins: $sgpr0_sgpr1141 ; CHECK-LABEL: name: inttoptr_s_p4142 ; CHECK: liveins: $sgpr0_sgpr1143 ; CHECK-NEXT: {{ $}}144 ; CHECK-NEXT: [[COPY:%[0-9]+]]:sgpr(s64) = COPY $sgpr0_sgpr1145 ; CHECK-NEXT: [[INTTOPTR:%[0-9]+]]:sgpr(p4) = G_INTTOPTR [[COPY]](s64)146 %0:_(s64) = COPY $sgpr0_sgpr1147 %1:_(p4) = G_INTTOPTR %0148...149 150---151name: inttoptr_v_p4152legalized: true153 154body: |155 bb.0:156 liveins: $vgpr0_vgpr1157 ; CHECK-LABEL: name: inttoptr_v_p4158 ; CHECK: liveins: $vgpr0_vgpr1159 ; CHECK-NEXT: {{ $}}160 ; CHECK-NEXT: [[COPY:%[0-9]+]]:vgpr(s64) = COPY $vgpr0_vgpr1161 ; CHECK-NEXT: [[INTTOPTR:%[0-9]+]]:vgpr(p4) = G_INTTOPTR [[COPY]](s64)162 %0:_(s64) = COPY $vgpr0_vgpr1163 %1:_(p4) = G_INTTOPTR %0164...165 166---167name: inttoptr_s_p5168legalized: true169 170body: |171 bb.0:172 liveins: $sgpr0173 ; CHECK-LABEL: name: inttoptr_s_p5174 ; CHECK: liveins: $sgpr0175 ; CHECK-NEXT: {{ $}}176 ; CHECK-NEXT: [[COPY:%[0-9]+]]:sgpr(s32) = COPY $sgpr0177 ; CHECK-NEXT: [[INTTOPTR:%[0-9]+]]:sgpr(p5) = G_INTTOPTR [[COPY]](s32)178 %0:_(s32) = COPY $sgpr0179 %1:_(p5) = G_INTTOPTR %0180...181 182---183name: inttoptr_v_p5184legalized: true185 186body: |187 bb.0:188 liveins: $vgpr0189 ; CHECK-LABEL: name: inttoptr_v_p5190 ; CHECK: liveins: $vgpr0191 ; CHECK-NEXT: {{ $}}192 ; CHECK-NEXT: [[COPY:%[0-9]+]]:vgpr(s32) = COPY $vgpr0193 ; CHECK-NEXT: [[INTTOPTR:%[0-9]+]]:vgpr(p5) = G_INTTOPTR [[COPY]](s32)194 %0:_(s32) = COPY $vgpr0195 %1:_(p5) = G_INTTOPTR %0196...197 198---199name: inttoptr_s_p6200legalized: true201 202body: |203 bb.0:204 liveins: $sgpr0205 ; CHECK-LABEL: name: inttoptr_s_p6206 ; CHECK: liveins: $sgpr0207 ; CHECK-NEXT: {{ $}}208 ; CHECK-NEXT: [[COPY:%[0-9]+]]:sgpr(s32) = COPY $sgpr0209 ; CHECK-NEXT: [[INTTOPTR:%[0-9]+]]:sgpr(p6) = G_INTTOPTR [[COPY]](s32)210 %0:_(s32) = COPY $sgpr0211 %1:_(p6) = G_INTTOPTR %0212...213 214---215name: inttoptr_v_p6216legalized: true217 218body: |219 bb.0:220 liveins: $vgpr0221 ; CHECK-LABEL: name: inttoptr_v_p6222 ; CHECK: liveins: $vgpr0223 ; CHECK-NEXT: {{ $}}224 ; CHECK-NEXT: [[COPY:%[0-9]+]]:vgpr(s32) = COPY $vgpr0225 ; CHECK-NEXT: [[INTTOPTR:%[0-9]+]]:vgpr(p6) = G_INTTOPTR [[COPY]](s32)226 %0:_(s32) = COPY $vgpr0227 %1:_(p6) = G_INTTOPTR %0228...229 230---231name: inttoptr_s_p8232legalized: true233 234body: |235 bb.0:236 liveins: $sgpr0_sgpr1_sgpr2_sgpr3237 ; CHECK-LABEL: name: inttoptr_s_p8238 ; CHECK: liveins: $sgpr0_sgpr1_sgpr2_sgpr3239 ; CHECK-NEXT: {{ $}}240 ; CHECK-NEXT: [[COPY:%[0-9]+]]:sgpr(s128) = COPY $sgpr0_sgpr1_sgpr2_sgpr3241 ; CHECK-NEXT: [[INTTOPTR:%[0-9]+]]:sgpr(p8) = G_INTTOPTR [[COPY]](s128)242 %0:_(s128) = COPY $sgpr0_sgpr1_sgpr2_sgpr3243 %1:_(p8) = G_INTTOPTR %0244...245 246---247name: inttoptr_v_p8248legalized: true249 250body: |251 bb.0:252 liveins: $vgpr0_vgpr1_vgpr2_vgpr3253 ; CHECK-LABEL: name: inttoptr_v_p8254 ; CHECK: liveins: $vgpr0_vgpr1_vgpr2_vgpr3255 ; CHECK-NEXT: {{ $}}256 ; CHECK-NEXT: [[COPY:%[0-9]+]]:vgpr(s128) = COPY $vgpr0_vgpr1_vgpr2_vgpr3257 ; CHECK-NEXT: [[INTTOPTR:%[0-9]+]]:vgpr(p8) = G_INTTOPTR [[COPY]](s128)258 %0:_(s128) = COPY $vgpr0_vgpr1_vgpr2_vgpr3259 %1:_(p8) = G_INTTOPTR %0260...261