65 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py UTC_ARGS: --version 22# RUN: llc -mtriple=amdgcn-mesa-mesa3d -mcpu=tahiti -run-pass=legalizer -o - %s | FileCheck -check-prefix=GCN %s3 4# Check edge cases for trap legalization5 6---7name: test_fallthrough_after_trap8body: |9 ; GCN-LABEL: name: test_fallthrough_after_trap10 ; GCN: bb.0:11 ; GCN-NEXT: successors: %bb.1(0x80000000), %bb.2(0x00000000)12 ; GCN-NEXT: {{ $}}13 ; GCN-NEXT: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 014 ; GCN-NEXT: [[C1:%[0-9]+]]:_(p1) = G_CONSTANT i64 015 ; GCN-NEXT: S_CBRANCH_EXECNZ %bb.2, implicit $exec16 ; GCN-NEXT: {{ $}}17 ; GCN-NEXT: bb.1:18 ; GCN-NEXT: successors:19 ; GCN-NEXT: {{ $}}20 ; GCN-NEXT: G_STORE [[C]](s32), [[C1]](p1) :: (store (s8), addrspace 1)21 ; GCN-NEXT: {{ $}}22 ; GCN-NEXT: bb.2:23 ; GCN-NEXT: S_ENDPGM 024 bb.0:25 %0:_(s8) = G_CONSTANT i8 026 %1:_(p1) = G_CONSTANT i64 027 G_TRAP28 29 bb.1:30 G_STORE %0, %1 :: (store 1, addrspace 1)31 32...33 34---35name: test_def_fallthrough_after_trap36body: |37 ; GCN-LABEL: name: test_def_fallthrough_after_trap38 ; GCN: bb.0:39 ; GCN-NEXT: successors: %bb.2(0x40000000), %bb.3(0x40000000)40 ; GCN-NEXT: {{ $}}41 ; GCN-NEXT: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 042 ; GCN-NEXT: S_CBRANCH_EXECNZ %bb.3, implicit $exec43 ; GCN-NEXT: {{ $}}44 ; GCN-NEXT: bb.2:45 ; GCN-NEXT: successors: %bb.1(0x80000000)46 ; GCN-NEXT: {{ $}}47 ; GCN-NEXT: [[C1:%[0-9]+]]:_(p1) = G_CONSTANT i64 048 ; GCN-NEXT: {{ $}}49 ; GCN-NEXT: bb.1:50 ; GCN-NEXT: successors:51 ; GCN-NEXT: {{ $}}52 ; GCN-NEXT: G_STORE [[C]](s32), [[C1]](p1) :: (store (s8), addrspace 1)53 ; GCN-NEXT: {{ $}}54 ; GCN-NEXT: bb.3:55 ; GCN-NEXT: S_ENDPGM 056 bb.0:57 %0:_(s8) = G_CONSTANT i8 058 G_TRAP59 %1:_(p1) = G_CONSTANT i64 060 61 bb.1:62 G_STORE %0, %1 :: (store 1, addrspace 1)63 64...65