43 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=amdgcn -run-pass=amdgpu-prelegalizer-combiner -verify-machineinstrs %s -o - | FileCheck %s3 4# Tries to emit a foldable G_PTR_ADD with (p1, s32) operands.5---6name: test_ptradd_crash__offset_smaller7tracksRegLiveness: true8body: |9 bb.0:10 ; CHECK-LABEL: name: test_ptradd_crash__offset_smaller11 ; CHECK: [[C:%[0-9]+]]:_(s64) = G_CONSTANT i64 1212 ; CHECK-NEXT: [[INTTOPTR:%[0-9]+]]:_(p1) = G_INTTOPTR [[C]](s64)13 ; CHECK-NEXT: [[LOAD:%[0-9]+]]:_(s32) = G_LOAD [[INTTOPTR]](p1) :: (load (s32), addrspace 1)14 ; CHECK-NEXT: $sgpr0 = COPY [[LOAD]](s32)15 ; CHECK-NEXT: SI_RETURN_TO_EPILOG implicit $sgpr016 %1:_(p1) = G_CONSTANT i64 017 %3:_(s32) = G_CONSTANT i32 318 %0:_(<4 x s32>) = G_LOAD %1 :: (load (<4 x s32>) from `ptr addrspace(1) null`, addrspace 1)19 %2:_(s32) = G_EXTRACT_VECTOR_ELT %0, %320 $sgpr0 = COPY %221 SI_RETURN_TO_EPILOG implicit $sgpr022...23 24# Tries to emit a foldable G_PTR_ADD with (p1, s128) operands.25---26name: test_ptradd_crash__offset_wider27tracksRegLiveness: true28body: |29 bb.0:30 ; CHECK-LABEL: name: test_ptradd_crash__offset_wider31 ; CHECK: [[C:%[0-9]+]]:_(s64) = G_CONSTANT i64 1232 ; CHECK-NEXT: [[INTTOPTR:%[0-9]+]]:_(p1) = G_INTTOPTR [[C]](s64)33 ; CHECK-NEXT: [[LOAD:%[0-9]+]]:_(s32) = G_LOAD [[INTTOPTR]](p1) :: (load (s32), addrspace 1)34 ; CHECK-NEXT: $sgpr0 = COPY [[LOAD]](s32)35 ; CHECK-NEXT: SI_RETURN_TO_EPILOG implicit $sgpr036 %1:_(p1) = G_CONSTANT i64 037 %3:_(s32) = G_CONSTANT i32 338 %0:_(<4 x s32>) = G_LOAD %1 :: (load (<4 x s32>) from `ptr addrspace(1) null`, addrspace 1)39 %2:_(s32) = G_EXTRACT_VECTOR_ELT %0, %340 $sgpr0 = COPY %241 SI_RETURN_TO_EPILOG implicit $sgpr042...43