|
1 | 1 | # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py UTC_ARGS: --version 2 |
2 | | -# RUN: llc -global-isel=1 -mtriple=amdgcn--amdhsa -mcpu=gfx1100 -o - -run-pass=legalizer %s | FileCheck -check-prefix=GCN %s |
| 2 | +# RUN: llc -mtriple=amdgcn--amdhsa -mcpu=gfx1100 -o - -run-pass=legalizer %s | FileCheck -check-prefix=GFX1100 %s |
| 3 | +# RUN: llc -mtriple=amdgcn--amdhsa -mcpu=gfx1150 -o - -run-pass=legalizer %s | FileCheck -check-prefix=GFX1150 %s |
3 | 4 |
|
4 | 5 | --- |
5 | 6 | name: test_trap |
6 | 7 | body: | |
7 | 8 | bb.0: |
8 | | - ; GCN-LABEL: name: test_trap |
9 | | - ; GCN: successors: %bb.2(0x80000000) |
10 | | - ; GCN-NEXT: {{ $}} |
11 | | - ; GCN-NEXT: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0 |
12 | | - ; GCN-NEXT: [[C1:%[0-9]+]]:_(p1) = G_CONSTANT i64 0 |
13 | | - ; GCN-NEXT: G_STORE [[C]](s32), [[C1]](p1) :: (store (s8), addrspace 1) |
14 | | - ; GCN-NEXT: S_TRAP 2 |
15 | | - ; GCN-NEXT: [[S_SENDMSG_RTN_B32_:%[0-9]+]]:sreg_32 = S_SENDMSG_RTN_B32 128 |
16 | | - ; GCN-NEXT: $ttmp2 = S_MOV_B32 $m0 |
17 | | - ; GCN-NEXT: [[S_AND_B32_:%[0-9]+]]:sreg_32 = S_AND_B32 [[S_SENDMSG_RTN_B32_]], 1023, implicit-def $scc |
18 | | - ; GCN-NEXT: [[S_OR_B32_:%[0-9]+]]:sreg_32 = S_OR_B32 [[S_AND_B32_]], 1024, implicit-def $scc |
19 | | - ; GCN-NEXT: $m0 = S_MOV_B32 [[S_OR_B32_]] |
20 | | - ; GCN-NEXT: S_SENDMSG 1, implicit $exec, implicit $m0 |
21 | | - ; GCN-NEXT: $m0 = S_MOV_B32 $ttmp2 |
22 | | - ; GCN-NEXT: S_BRANCH %bb.2 |
23 | | - ; GCN-NEXT: {{ $}} |
24 | | - ; GCN-NEXT: .1: |
25 | | - ; GCN-NEXT: successors: |
26 | | - ; GCN-NEXT: {{ $}} |
27 | | - ; GCN-NEXT: G_STORE [[C]](s32), [[C1]](p1) :: (store (s8), addrspace 1) |
28 | | - ; GCN-NEXT: {{ $}} |
29 | | - ; GCN-NEXT: .2: |
30 | | - ; GCN-NEXT: successors: %bb.2(0x80000000) |
31 | | - ; GCN-NEXT: {{ $}} |
32 | | - ; GCN-NEXT: S_SETHALT 5 |
33 | | - ; GCN-NEXT: S_BRANCH %bb.2 |
| 9 | + ; GFX1100-LABEL: name: test_trap |
| 10 | + ; GFX1100: successors: %bb.2(0x80000000) |
| 11 | + ; GFX1100-NEXT: {{ $}} |
| 12 | + ; GFX1100-NEXT: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0 |
| 13 | + ; GFX1100-NEXT: [[C1:%[0-9]+]]:_(p1) = G_CONSTANT i64 0 |
| 14 | + ; GFX1100-NEXT: G_STORE [[C]](s32), [[C1]](p1) :: (store (s8), addrspace 1) |
| 15 | + ; GFX1100-NEXT: S_TRAP 2 |
| 16 | + ; GFX1100-NEXT: [[S_SENDMSG_RTN_B32_:%[0-9]+]]:sreg_32 = S_SENDMSG_RTN_B32 128 |
| 17 | + ; GFX1100-NEXT: $ttmp2 = S_MOV_B32 $m0 |
| 18 | + ; GFX1100-NEXT: [[S_AND_B32_:%[0-9]+]]:sreg_32 = S_AND_B32 [[S_SENDMSG_RTN_B32_]], 1023, implicit-def $scc |
| 19 | + ; GFX1100-NEXT: [[S_OR_B32_:%[0-9]+]]:sreg_32 = S_OR_B32 [[S_AND_B32_]], 1024, implicit-def $scc |
| 20 | + ; GFX1100-NEXT: $m0 = S_MOV_B32 [[S_OR_B32_]] |
| 21 | + ; GFX1100-NEXT: S_SENDMSG 1, implicit $exec, implicit $m0 |
| 22 | + ; GFX1100-NEXT: $m0 = S_MOV_B32 $ttmp2 |
| 23 | + ; GFX1100-NEXT: S_BRANCH %bb.2 |
| 24 | + ; GFX1100-NEXT: {{ $}} |
| 25 | + ; GFX1100-NEXT: .1: |
| 26 | + ; GFX1100-NEXT: successors: |
| 27 | + ; GFX1100-NEXT: {{ $}} |
| 28 | + ; GFX1100-NEXT: G_STORE [[C]](s32), [[C1]](p1) :: (store (s8), addrspace 1) |
| 29 | + ; GFX1100-NEXT: {{ $}} |
| 30 | + ; GFX1100-NEXT: .2: |
| 31 | + ; GFX1100-NEXT: successors: %bb.2(0x80000000) |
| 32 | + ; GFX1100-NEXT: {{ $}} |
| 33 | + ; GFX1100-NEXT: S_SETHALT 5 |
| 34 | + ; GFX1100-NEXT: S_BRANCH %bb.2 |
| 35 | + ; |
| 36 | + ; GFX1150-LABEL: name: test_trap |
| 37 | + ; GFX1150: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 0 |
| 38 | + ; GFX1150-NEXT: [[C1:%[0-9]+]]:_(p1) = G_CONSTANT i64 0 |
| 39 | + ; GFX1150-NEXT: G_STORE [[C]](s32), [[C1]](p1) :: (store (s8), addrspace 1) |
| 40 | + ; GFX1150-NEXT: S_TRAP 2 |
| 41 | + ; GFX1150-NEXT: G_STORE [[C]](s32), [[C1]](p1) :: (store (s8), addrspace 1) |
34 | 42 | %0:_(s8) = G_CONSTANT i8 0 |
35 | 43 | %1:_(p1) = G_CONSTANT i64 0 |
36 | 44 | G_STORE %0, %1 :: (store 1, addrspace 1) |
|
0 commit comments