brintos

brintos / llvm-project-archived public Read only

0
0
Text · 4.7 KiB · a4971e9 Raw
128 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=bonaire -O0 -run-pass=legalizer %s -o - | FileCheck -check-prefix=CI %s3 4# FIXME: Run with and without unaligned access on5 6---7name: test_zextload_constant32bit_s64_s32_align48body: |9  bb.0:10    liveins: $sgpr011 12    ; CI-LABEL: name: test_zextload_constant32bit_s64_s32_align413    ; CI: liveins: $sgpr014    ; CI-NEXT: {{  $}}15    ; CI-NEXT: [[COPY:%[0-9]+]]:_(p6) = COPY $sgpr016    ; CI-NEXT: [[PTRTOINT:%[0-9]+]]:_(s32) = G_PTRTOINT [[COPY]](p6)17    ; CI-NEXT: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 018    ; CI-NEXT: [[MV:%[0-9]+]]:_(p4) = G_MERGE_VALUES [[PTRTOINT]](s32), [[C]](s32)19    ; CI-NEXT: [[LOAD:%[0-9]+]]:_(s32) = G_LOAD [[MV]](p4) :: (load (s32), addrspace 6)20    ; CI-NEXT: [[ZEXT:%[0-9]+]]:_(s64) = G_ZEXT [[LOAD]](s32)21    ; CI-NEXT: $vgpr0_vgpr1 = COPY [[ZEXT]](s64)22    %0:_(p6) = COPY $sgpr023    %1:_(s64) = G_ZEXTLOAD %0 :: (load (s32), align 4, addrspace 6)24    $vgpr0_vgpr1 = COPY %125...26 27---28name: test_zextload_constant32bit_s64_s32_align229body: |30  bb.0:31    liveins: $sgpr032 33    ; CI-LABEL: name: test_zextload_constant32bit_s64_s32_align234    ; CI: liveins: $sgpr035    ; CI-NEXT: {{  $}}36    ; CI-NEXT: [[COPY:%[0-9]+]]:_(p6) = COPY $sgpr037    ; CI-NEXT: [[PTRTOINT:%[0-9]+]]:_(s32) = G_PTRTOINT [[COPY]](p6)38    ; CI-NEXT: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 039    ; CI-NEXT: [[MV:%[0-9]+]]:_(p4) = G_MERGE_VALUES [[PTRTOINT]](s32), [[C]](s32)40    ; CI-NEXT: [[LOAD:%[0-9]+]]:_(s32) = G_LOAD [[MV]](p4) :: (load (s32), align 2, addrspace 6)41    ; CI-NEXT: [[ZEXT:%[0-9]+]]:_(s64) = G_ZEXT [[LOAD]](s32)42    ; CI-NEXT: $vgpr0_vgpr1 = COPY [[ZEXT]](s64)43    %0:_(p6) = COPY $sgpr044    %1:_(s64) = G_ZEXTLOAD %0 :: (load (s32), align 2, addrspace 6)45    $vgpr0_vgpr1 = COPY %146...47 48---49name: test_zextload_constant32bit_s64_s32_align150body: |51  bb.0:52    liveins: $sgpr053 54    ; CI-LABEL: name: test_zextload_constant32bit_s64_s32_align155    ; CI: liveins: $sgpr056    ; CI-NEXT: {{  $}}57    ; CI-NEXT: [[COPY:%[0-9]+]]:_(p6) = COPY $sgpr058    ; CI-NEXT: [[PTRTOINT:%[0-9]+]]:_(s32) = G_PTRTOINT [[COPY]](p6)59    ; CI-NEXT: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 060    ; CI-NEXT: [[MV:%[0-9]+]]:_(p4) = G_MERGE_VALUES [[PTRTOINT]](s32), [[C]](s32)61    ; CI-NEXT: [[LOAD:%[0-9]+]]:_(s32) = G_LOAD [[MV]](p4) :: (load (s32), align 1, addrspace 6)62    ; CI-NEXT: [[ZEXT:%[0-9]+]]:_(s64) = G_ZEXT [[LOAD]](s32)63    ; CI-NEXT: $vgpr0_vgpr1 = COPY [[ZEXT]](s64)64    %0:_(p6) = COPY $sgpr065    %1:_(s64) = G_ZEXTLOAD %0 :: (load (s32), align 1, addrspace 6)66    $vgpr0_vgpr1 = COPY %167...68 69---70name: test_zextload_constant32bit_s32_s8_align171body: |72  bb.0:73    liveins: $sgpr074 75    ; CI-LABEL: name: test_zextload_constant32bit_s32_s8_align176    ; CI: liveins: $sgpr077    ; CI-NEXT: {{  $}}78    ; CI-NEXT: [[COPY:%[0-9]+]]:_(p6) = COPY $sgpr079    ; CI-NEXT: [[PTRTOINT:%[0-9]+]]:_(s32) = G_PTRTOINT [[COPY]](p6)80    ; CI-NEXT: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 081    ; CI-NEXT: [[MV:%[0-9]+]]:_(p4) = G_MERGE_VALUES [[PTRTOINT]](s32), [[C]](s32)82    ; CI-NEXT: [[ZEXTLOAD:%[0-9]+]]:_(s32) = G_ZEXTLOAD [[MV]](p4) :: (load (s8), addrspace 6)83    ; CI-NEXT: $vgpr0 = COPY [[ZEXTLOAD]](s32)84    %0:_(p6) = COPY $sgpr085    %1:_(s32) = G_ZEXTLOAD %0 :: (load (s8), align 1, addrspace 6)86    $vgpr0 = COPY %187...88 89---90name: test_zextload_constant32bit_s32_s16_align291body: |92  bb.0:93    liveins: $sgpr094 95    ; CI-LABEL: name: test_zextload_constant32bit_s32_s16_align296    ; CI: liveins: $sgpr097    ; CI-NEXT: {{  $}}98    ; CI-NEXT: [[COPY:%[0-9]+]]:_(p6) = COPY $sgpr099    ; CI-NEXT: [[PTRTOINT:%[0-9]+]]:_(s32) = G_PTRTOINT [[COPY]](p6)100    ; CI-NEXT: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0101    ; CI-NEXT: [[MV:%[0-9]+]]:_(p4) = G_MERGE_VALUES [[PTRTOINT]](s32), [[C]](s32)102    ; CI-NEXT: [[ZEXTLOAD:%[0-9]+]]:_(s32) = G_ZEXTLOAD [[MV]](p4) :: (load (s16), addrspace 6)103    ; CI-NEXT: $vgpr0 = COPY [[ZEXTLOAD]](s32)104    %0:_(p6) = COPY $sgpr0105    %1:_(s32) = G_ZEXTLOAD %0 :: (load (s16), align 2, addrspace 6)106    $vgpr0 = COPY %1107...108 109---110name: test_zextload_constant32bit_s32_s16_align1111body: |112  bb.0:113    liveins: $sgpr0114 115    ; CI-LABEL: name: test_zextload_constant32bit_s32_s16_align1116    ; CI: liveins: $sgpr0117    ; CI-NEXT: {{  $}}118    ; CI-NEXT: [[COPY:%[0-9]+]]:_(p6) = COPY $sgpr0119    ; CI-NEXT: [[PTRTOINT:%[0-9]+]]:_(s32) = G_PTRTOINT [[COPY]](p6)120    ; CI-NEXT: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0121    ; CI-NEXT: [[MV:%[0-9]+]]:_(p4) = G_MERGE_VALUES [[PTRTOINT]](s32), [[C]](s32)122    ; CI-NEXT: [[ZEXTLOAD:%[0-9]+]]:_(s32) = G_ZEXTLOAD [[MV]](p4) :: (load (s16), align 1, addrspace 6)123    ; CI-NEXT: $vgpr0 = COPY [[ZEXTLOAD]](s32)124    %0:_(p6) = COPY $sgpr0125    %1:_(s32) = G_ZEXTLOAD %0 :: (load (s16), align 1, addrspace 6)126    $vgpr0 = COPY %1127...128