brintos

brintos / llvm-project-archived public Read only

0
0
Text · 6.8 KiB · 5994572 Raw
220 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=amdgcn -O0 -run-pass=legalizer -global-isel-abort=0 -o - %s  | FileCheck %s3 4---5name: test_ptrtoint_p0_to_s646body: |7  bb.0:8    liveins: $vgpr0_vgpr19 10    ; CHECK-LABEL: name: test_ptrtoint_p0_to_s6411    ; CHECK: liveins: $vgpr0_vgpr112    ; CHECK-NEXT: {{  $}}13    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $vgpr0_vgpr114    ; CHECK-NEXT: [[PTRTOINT:%[0-9]+]]:_(s64) = G_PTRTOINT [[COPY]](p0)15    ; CHECK-NEXT: $vgpr0_vgpr1 = COPY [[PTRTOINT]](s64)16    %0:_(p0) = COPY $vgpr0_vgpr117    %1:_(s64) = G_PTRTOINT %018    $vgpr0_vgpr1 = COPY %119...20 21---22name: test_ptrtoint_p1_to_s6423body: |24  bb.0:25    liveins: $vgpr0_vgpr126 27    ; CHECK-LABEL: name: test_ptrtoint_p1_to_s6428    ; CHECK: liveins: $vgpr0_vgpr129    ; CHECK-NEXT: {{  $}}30    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p1) = COPY $vgpr0_vgpr131    ; CHECK-NEXT: [[PTRTOINT:%[0-9]+]]:_(s64) = G_PTRTOINT [[COPY]](p1)32    ; CHECK-NEXT: $vgpr0_vgpr1 = COPY [[PTRTOINT]](s64)33    %0:_(p1) = COPY $vgpr0_vgpr134    %1:_(s64) = G_PTRTOINT %035    $vgpr0_vgpr1 = COPY %136...37 38---39name: test_ptrtoint_p4_to_s6440body: |41  bb.0:42    liveins: $vgpr0_vgpr143 44    ; CHECK-LABEL: name: test_ptrtoint_p4_to_s6445    ; CHECK: liveins: $vgpr0_vgpr146    ; CHECK-NEXT: {{  $}}47    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p4) = COPY $vgpr0_vgpr148    ; CHECK-NEXT: [[PTRTOINT:%[0-9]+]]:_(s64) = G_PTRTOINT [[COPY]](p4)49    ; CHECK-NEXT: $vgpr0_vgpr1 = COPY [[PTRTOINT]](s64)50    %0:_(p4) = COPY $vgpr0_vgpr151    %1:_(s64) = G_PTRTOINT %052    $vgpr0_vgpr1 = COPY %153...54 55---56name: test_ptrtoint_p3_to_s3257body: |58  bb.0:59    liveins: $vgpr060 61    ; CHECK-LABEL: name: test_ptrtoint_p3_to_s3262    ; CHECK: liveins: $vgpr063    ; CHECK-NEXT: {{  $}}64    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p3) = COPY $vgpr065    ; CHECK-NEXT: [[PTRTOINT:%[0-9]+]]:_(s32) = G_PTRTOINT [[COPY]](p3)66    ; CHECK-NEXT: $vgpr0 = COPY [[PTRTOINT]](s32)67    %0:_(p3) = COPY $vgpr068    %1:_(s32) = G_PTRTOINT %069    $vgpr0 = COPY %170...71 72---73name: test_ptrtoint_p5_to_s3274body: |75  bb.0:76    liveins: $vgpr077 78    ; CHECK-LABEL: name: test_ptrtoint_p5_to_s3279    ; CHECK: liveins: $vgpr080    ; CHECK-NEXT: {{  $}}81    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p5) = COPY $vgpr082    ; CHECK-NEXT: [[PTRTOINT:%[0-9]+]]:_(s32) = G_PTRTOINT [[COPY]](p5)83    ; CHECK-NEXT: $vgpr0 = COPY [[PTRTOINT]](s32)84    %0:_(p5) = COPY $vgpr085    %1:_(s32) = G_PTRTOINT %086    $vgpr0 = COPY %187...88 89---90name: test_ptrtoint_p999_to_s6491body: |92  bb.0:93    liveins: $vgpr0_vgpr194 95    ; CHECK-LABEL: name: test_ptrtoint_p999_to_s6496    ; CHECK: liveins: $vgpr0_vgpr197    ; CHECK-NEXT: {{  $}}98    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p999) = COPY $vgpr0_vgpr199    ; CHECK-NEXT: [[PTRTOINT:%[0-9]+]]:_(s64) = G_PTRTOINT [[COPY]](p999)100    ; CHECK-NEXT: $vgpr0_vgpr1 = COPY [[PTRTOINT]](s64)101    %0:_(p999) = COPY $vgpr0_vgpr1102    %1:_(s64) = G_PTRTOINT %0103    $vgpr0_vgpr1 = COPY %1104...105 106---107name: test_ptrtoint_p0_to_s32108body: |109  bb.0:110    liveins: $vgpr0_vgpr1111 112    ; CHECK-LABEL: name: test_ptrtoint_p0_to_s32113    ; CHECK: liveins: $vgpr0_vgpr1114    ; CHECK-NEXT: {{  $}}115    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $vgpr0_vgpr1116    ; CHECK-NEXT: [[PTRTOINT:%[0-9]+]]:_(s64) = G_PTRTOINT [[COPY]](p0)117    ; CHECK-NEXT: [[TRUNC:%[0-9]+]]:_(s32) = G_TRUNC [[PTRTOINT]](s64)118    ; CHECK-NEXT: $vgpr0 = COPY [[TRUNC]](s32)119    %0:_(p0) = COPY $vgpr0_vgpr1120    %1:_(s32) = G_PTRTOINT %0121    $vgpr0 = COPY %1122...123 124---125name: test_ptrtoint_p0_to_s128126body: |127  bb.0:128    liveins: $vgpr0_vgpr1129 130    ; CHECK-LABEL: name: test_ptrtoint_p0_to_s128131    ; CHECK: liveins: $vgpr0_vgpr1132    ; CHECK-NEXT: {{  $}}133    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p0) = COPY $vgpr0_vgpr1134    ; CHECK-NEXT: [[PTRTOINT:%[0-9]+]]:_(s64) = G_PTRTOINT [[COPY]](p0)135    ; CHECK-NEXT: [[C:%[0-9]+]]:_(s64) = G_CONSTANT i64 0136    ; CHECK-NEXT: [[MV:%[0-9]+]]:_(s128) = G_MERGE_VALUES [[PTRTOINT]](s64), [[C]](s64)137    ; CHECK-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = COPY [[MV]](s128)138    %0:_(p0) = COPY $vgpr0_vgpr1139    %1:_(s128) = G_PTRTOINT %0140    $vgpr0_vgpr1_vgpr2_vgpr3 = COPY %1141...142 143---144name: test_ptrtoint_v2p0_to_v2s64145body: |146  bb.0:147    liveins: $vgpr0_vgpr1_vgpr2_vgpr3148 149    ; CHECK-LABEL: name: test_ptrtoint_v2p0_to_v2s64150    ; CHECK: liveins: $vgpr0_vgpr1_vgpr2_vgpr3151    ; CHECK-NEXT: {{  $}}152    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(<2 x p0>) = COPY $vgpr0_vgpr1_vgpr2_vgpr3153    ; CHECK-NEXT: [[UV:%[0-9]+]]:_(p0), [[UV1:%[0-9]+]]:_(p0) = G_UNMERGE_VALUES [[COPY]](<2 x p0>)154    ; CHECK-NEXT: [[PTRTOINT:%[0-9]+]]:_(s64) = G_PTRTOINT [[UV]](p0)155    ; CHECK-NEXT: [[PTRTOINT1:%[0-9]+]]:_(s64) = G_PTRTOINT [[UV1]](p0)156    ; CHECK-NEXT: [[BUILD_VECTOR:%[0-9]+]]:_(<2 x s64>) = G_BUILD_VECTOR [[PTRTOINT]](s64), [[PTRTOINT1]](s64)157    ; CHECK-NEXT: $vgpr0_vgpr1_vgpr2_vgpr3 = COPY [[BUILD_VECTOR]](<2 x s64>)158    %0:_(<2 x p0>) = COPY $vgpr0_vgpr1_vgpr2_vgpr3159    %1:_(<2 x s64>) = G_PTRTOINT %0160    $vgpr0_vgpr1_vgpr2_vgpr3 = COPY %1161...162 163---164name: test_ptrtoint_v2s32_to_v2p0165body: |166  bb.0:167    liveins: $vgpr0_vgpr1_vgpr2_vgpr3168 169    ; CHECK-LABEL: name: test_ptrtoint_v2s32_to_v2p0170    ; CHECK: liveins: $vgpr0_vgpr1_vgpr2_vgpr3171    ; CHECK-NEXT: {{  $}}172    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(<2 x p0>) = COPY $vgpr0_vgpr1_vgpr2_vgpr3173    ; CHECK-NEXT: [[UV:%[0-9]+]]:_(p0), [[UV1:%[0-9]+]]:_(p0) = G_UNMERGE_VALUES [[COPY]](<2 x p0>)174    ; CHECK-NEXT: [[PTRTOINT:%[0-9]+]]:_(s64) = G_PTRTOINT [[UV]](p0)175    ; CHECK-NEXT: [[TRUNC:%[0-9]+]]:_(s32) = G_TRUNC [[PTRTOINT]](s64)176    ; CHECK-NEXT: [[PTRTOINT1:%[0-9]+]]:_(s64) = G_PTRTOINT [[UV1]](p0)177    ; CHECK-NEXT: [[TRUNC1:%[0-9]+]]:_(s32) = G_TRUNC [[PTRTOINT1]](s64)178    ; CHECK-NEXT: [[BUILD_VECTOR:%[0-9]+]]:_(<2 x s32>) = G_BUILD_VECTOR [[TRUNC]](s32), [[TRUNC1]](s32)179    ; CHECK-NEXT: $vgpr0_vgpr1 = COPY [[BUILD_VECTOR]](<2 x s32>)180    %0:_(<2 x p0>) = COPY $vgpr0_vgpr1_vgpr2_vgpr3181    %1:_(<2 x s32>) = G_PTRTOINT %0182    $vgpr0_vgpr1 = COPY %1183...184 185---186name: test_ptrtoint_p3_to_s29187body: |188  bb.0:189    liveins: $vgpr0190 191    ; CHECK-LABEL: name: test_ptrtoint_p3_to_s29192    ; CHECK: liveins: $vgpr0193    ; CHECK-NEXT: {{  $}}194    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p3) = COPY $vgpr0195    ; CHECK-NEXT: [[PTRTOINT:%[0-9]+]]:_(s32) = G_PTRTOINT [[COPY]](p3)196    ; CHECK-NEXT: [[TRUNC:%[0-9]+]]:_(s29) = G_TRUNC [[PTRTOINT]](s32)197    ; CHECK-NEXT: S_ENDPGM 0, implicit [[TRUNC]](s29)198    %0:_(p3) = COPY $vgpr0199    %1:_(s29) = G_PTRTOINT %0200    S_ENDPGM 0, implicit %1201...202 203---204name: test_ptrtoint_p3_to_s33205body: |206  bb.0:207    liveins: $vgpr0208 209    ; CHECK-LABEL: name: test_ptrtoint_p3_to_s33210    ; CHECK: liveins: $vgpr0211    ; CHECK-NEXT: {{  $}}212    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(p3) = COPY $vgpr0213    ; CHECK-NEXT: [[PTRTOINT:%[0-9]+]]:_(s32) = G_PTRTOINT [[COPY]](p3)214    ; CHECK-NEXT: [[ZEXT:%[0-9]+]]:_(s33) = G_ZEXT [[PTRTOINT]](s32)215    ; CHECK-NEXT: S_ENDPGM 0, implicit [[ZEXT]](s33)216    %0:_(p3) = COPY $vgpr0217    %1:_(s33) = G_PTRTOINT %0218    S_ENDPGM 0, implicit %1219...220