|
| 1 | +// RUN: not llvm-mc -arch=amdgcn -mcpu=tahiti -show-encoding %s | FileCheck -check-prefix=GCN -check-prefix=SICI %s |
| 2 | +// RUN: not llvm-mc -arch=amdgcn -mcpu=kaveri -show-encoding %s | FileCheck -check-prefix=GCN -check-prefix=SICI %s |
1 | 3 | // RUN: llvm-mc -arch=amdgcn -mcpu=tonga -show-encoding %s | FileCheck -check-prefix=GCN -check-prefix=VI %s
|
2 |
| -// RUN: not llvm-mc -arch=amdgcn -mcpu=tahiti %s 2>&1 | FileCheck -check-prefix=NOSI %s |
3 |
| -// RUN: not llvm-mc -arch=amdgcn -mcpu=bonaire %s 2>&1 | FileCheck -check-prefix=NOSI %s |
| 4 | +// RUN: not llvm-mc -arch=amdgcn -mcpu=tahiti %s 2>&1 | FileCheck -check-prefix=NOSICI %s |
| 5 | +// RUN: not llvm-mc -arch=amdgcn -mcpu=bonaire %s 2>&1 | FileCheck -check-prefix=NOSICI %s |
| 6 | +// RUN: not llvm-mc -arch=amdgcn -mcpu=kaveri %s 2>&1 | FileCheck -check-prefix=NOSICI %s |
4 | 7 |
|
5 | 8 | s_dcache_wb
|
6 | 9 | // VI: s_dcache_wb ; encoding: [0x00,0x00,0x84,0xc0,0x00,0x00,0x00,0x00]
|
7 |
| -// NOSI: error: instruction not supported on this GPU |
| 10 | +// NOSICI: error: instruction not supported on this GPU |
8 | 11 |
|
9 | 12 | s_dcache_wb_vol
|
10 | 13 | // VI: s_dcache_wb_vol ; encoding: [0x00,0x00,0x8c,0xc0,0x00,0x00,0x00,0x00]
|
11 |
| -// NOSI: error: instruction not supported on this GPU |
| 14 | +// NOSICI: error: instruction not supported on this GPU |
12 | 15 |
|
13 | 16 | s_memrealtime s[4:5]
|
14 | 17 | // VI: s_memrealtime s[4:5] ; encoding: [0x00,0x01,0x94,0xc0,0x00,0x00,0x00,0x00]
|
15 |
| -// NOSI: error: instruction not supported on this GPU |
| 18 | +// NOSICI: error: instruction not supported on this GPU |
16 | 19 |
|
17 | 20 | // FIXME: Should error about instruction on GPU
|
18 | 21 | s_store_dword s1, s[2:3], 0xfc
|
19 | 22 | // VI: s_store_dword s1, s[2:3], 0xfc ; encoding: [0x41,0x00,0x42,0xc0,0xfc,0x00,0x00,0x00]
|
20 |
| -// NOSI: error: instruction not supported on this GPU |
| 23 | +// NOSICI: error: instruction not supported on this GPU |
21 | 24 |
|
22 | 25 | s_store_dword s1, s[2:3], 0xfc glc
|
23 | 26 | // VI: s_store_dword s1, s[2:3], 0xfc glc ; encoding: [0x41,0x00,0x43,0xc0,0xfc,0x00,0x00,0x00]
|
24 |
| -// NOSI: error: invalid operand for instruction |
| 27 | +// NOSICI: error: invalid operand for instruction |
25 | 28 |
|
26 | 29 | s_store_dword s1, s[2:3], s4
|
27 | 30 | // VI: s_store_dword s1, s[2:3], s4 ; encoding: [0x41,0x00,0x40,0xc0,0x04,0x00,0x00,0x00]
|
28 |
| -// NOSI: error: instruction not supported on this GPU |
| 31 | +// NOSICI: error: instruction not supported on this GPU |
29 | 32 |
|
30 | 33 | s_store_dword s1, s[2:3], s4 glc
|
31 | 34 | // VI: s_store_dword s1, s[2:3], s4 glc ; encoding: [0x41,0x00,0x41,0xc0,0x04,0x00,0x00,0x00]
|
32 |
| -// NOSI: error: invalid operand for instruction |
| 35 | +// NOSICI: error: invalid operand for instruction |
33 | 36 |
|
34 | 37 | // FIXME: Should error on SI instead of silently ignoring glc
|
35 | 38 | s_load_dword s1, s[2:3], 0xfc glc
|
36 | 39 | // VI: s_load_dword s1, s[2:3], 0xfc glc ; encoding: [0x41,0x00,0x03,0xc0,0xfc,0x00,0x00,0x00]
|
37 | 40 |
|
38 | 41 | s_load_dword s1, s[2:3], s4 glc
|
39 | 42 | // VI: s_load_dword s1, s[2:3], s4 glc ; encoding: [0x41,0x00,0x01,0xc0,0x04,0x00,0x00,0x00]
|
| 43 | + |
| 44 | +s_buffer_store_dword s10, s[92:95], m0 |
| 45 | +// VI: s_buffer_store_dword s10, s[92:95], m0 ; encoding: [0xae,0x02,0x60,0xc0,0x7c,0x00,0x00,0x00] |
| 46 | +// NOSICI: error: instruction not supported on this GPU |
| 47 | + |
| 48 | +s_buffer_store_dwordx2 s[10:11], s[92:95], m0 |
| 49 | +// VI: s_buffer_store_dwordx2 s[10:11], s[92:95], m0 ; encoding: [0xae,0x02,0x64,0xc0,0x7c,0x00,0x00,0x00] |
| 50 | +// NOSICI: error: instruction not supported on this GPU |
| 51 | + |
| 52 | +s_buffer_store_dwordx4 s[8:11], s[92:95], m0 glc |
| 53 | +// VI: s_buffer_store_dwordx4 s[8:11], s[92:95], m0 glc ; encoding: [0x2e,0x02,0x69,0xc0,0x7c,0x00,0x00,0x00] |
| 54 | +// NOSICI: error: invalid operand for instruction |
| 55 | + |
| 56 | +s_buffer_load_dword s10, s[92:95], m0 |
| 57 | +// VI: s_buffer_load_dword s10, s[92:95], m0 ; encoding: [0xae,0x02,0x20,0xc0,0x7c,0x00,0x00,0x00] |
| 58 | +// SICI: s_buffer_load_dword s10, s[92:95], m0 ; encoding: [0x7c,0x5c,0x05,0xc2] |
| 59 | + |
| 60 | +s_buffer_load_dwordx2 s[10:11], s[92:95], m0 |
| 61 | +// VI: s_buffer_load_dwordx2 s[10:11], s[92:95], m0 ; encoding: [0xae,0x02,0x24,0xc0,0x7c,0x00,0x00,0x00] |
| 62 | +// SICI: s_buffer_load_dwordx2 s[10:11], s[92:95], m0 ; encoding: [0x7c,0x5c,0x45,0xc2] |
| 63 | + |
| 64 | +// FIXME: Should error on SI instead of silently ignoring glc |
| 65 | +s_buffer_load_dwordx4 s[8:11], s[92:95], m0 glc |
| 66 | +// VI: s_buffer_load_dwordx4 s[8:11], s[92:95], m0 glc ; encoding: [0x2e,0x02,0x29,0xc0,0x7c,0x00,0x00,0x00] |
0 commit comments