Matt Arsenault | d6adfb4 | 2015-09-24 19:52:21 +0000 | [diff] [blame] | 1 | // RUN: not llvm-mc -arch=amdgcn -mcpu=tahiti -show-encoding %s | FileCheck -check-prefix=GCN -check-prefix=SI -check-prefix=SICI %s |
| 2 | // RUN: not llvm-mc -arch=amdgcn -mcpu=bonaire -show-encoding %s | FileCheck -check-prefix=GCN -check-prefix=CI -check-prefix=SICI %s |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 3 | // RUN: not llvm-mc -arch=amdgcn -mcpu=tonga -show-encoding %s | FileCheck -check-prefix=GCN -check-prefix=VI %s |
Matt Arsenault | d6adfb4 | 2015-09-24 19:52:21 +0000 | [diff] [blame] | 4 | |
| 5 | // RUN: not llvm-mc -arch=amdgcn -mcpu=tahiti %s 2>&1 | FileCheck -check-prefix=NOSI %s |
| 6 | // RUN: not llvm-mc -arch=amdgcn -mcpu=bonaire %s 2>&1 | FileCheck -check-prefix=NOCI %s |
| 7 | // RUN: not llvm-mc -arch=amdgcn -mcpu=tonga %s 2>&1 | FileCheck -check-prefix=NOVI %s |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 8 | |
| 9 | //===----------------------------------------------------------------------===// |
| 10 | // Test for different operand combinations |
| 11 | //===----------------------------------------------------------------------===// |
| 12 | |
| 13 | //===----------------------------------------------------------------------===// |
| 14 | // load - immediate offset only |
| 15 | //===----------------------------------------------------------------------===// |
| 16 | |
| 17 | buffer_load_dword v1, s[4:7], s1 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 18 | // SICI: buffer_load_dword v1, s[4:7], s1 ; encoding: [0x00,0x00,0x30,0xe0,0x00,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 19 | // VI: buffer_load_dword v1, s[4:7], s1 ; encoding: [0x00,0x00,0x50,0xe0,0x00,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 20 | |
| 21 | buffer_load_dword v1, s[4:7], s1 offset:4 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 22 | // SICI: buffer_load_dword v1, s[4:7], s1 offset:4 ; encoding: [0x04,0x00,0x30,0xe0,0x00,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 23 | // VI: buffer_load_dword v1, s[4:7], s1 offset:4 ; encoding: [0x04,0x00,0x50,0xe0,0x00,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 24 | |
| 25 | buffer_load_dword v1, s[4:7], s1 offset:4 glc |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 26 | // SICI: buffer_load_dword v1, s[4:7], s1 offset:4 glc ; encoding: [0x04,0x40,0x30,0xe0,0x00,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 27 | // VI: buffer_load_dword v1, s[4:7], s1 offset:4 glc ; encoding: [0x04,0x40,0x50,0xe0,0x00,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 28 | |
| 29 | buffer_load_dword v1, s[4:7], s1 offset:4 slc |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 30 | // SICI: buffer_load_dword v1, s[4:7], s1 offset:4 slc ; encoding: [0x04,0x00,0x30,0xe0,0x00,0x01,0x41,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 31 | // VI: buffer_load_dword v1, s[4:7], s1 offset:4 slc ; encoding: [0x04,0x00,0x52,0xe0,0x00,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 32 | |
| 33 | buffer_load_dword v1, s[4:7], s1 offset:4 tfe |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 34 | // SICI: buffer_load_dword v1, s[4:7], s1 offset:4 tfe ; encoding: [0x04,0x00,0x30,0xe0,0x00,0x01,0x81,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 35 | // VI: buffer_load_dword v1, s[4:7], s1 offset:4 tfe ; encoding: [0x04,0x00,0x50,0xe0,0x00,0x01,0x81,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 36 | |
Nikolay Haustov | ea8febd | 2016-03-01 08:34:43 +0000 | [diff] [blame] | 37 | buffer_load_dword v1, s[4:7], s1 glc tfe |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 38 | // SICI: buffer_load_dword v1, s[4:7], s1 glc tfe ; encoding: [0x00,0x40,0x30,0xe0,0x00,0x01,0x81,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 39 | // VI: buffer_load_dword v1, s[4:7], s1 glc tfe ; encoding: [0x00,0x40,0x50,0xe0,0x00,0x01,0x81,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 40 | |
Nikolay Haustov | ea8febd | 2016-03-01 08:34:43 +0000 | [diff] [blame] | 41 | buffer_load_dword v1, s[4:7], s1 offset:4 glc slc tfe |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 42 | // SICI: buffer_load_dword v1, s[4:7], s1 offset:4 glc slc tfe ; encoding: [0x04,0x40,0x30,0xe0,0x00,0x01,0xc1,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 43 | // VI: buffer_load_dword v1, s[4:7], s1 offset:4 glc slc tfe ; encoding: [0x04,0x40,0x52,0xe0,0x00,0x01,0x81,0x01] |
| 44 | |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 45 | |
| 46 | //===----------------------------------------------------------------------===// |
| 47 | // load - vgpr offset |
| 48 | //===----------------------------------------------------------------------===// |
| 49 | |
| 50 | buffer_load_dword v1, v2, s[4:7], s1 offen |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 51 | // SICI: buffer_load_dword v1, v2, s[4:7], s1 offen ; encoding: [0x00,0x10,0x30,0xe0,0x02,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 52 | // VI: buffer_load_dword v1, v2, s[4:7], s1 offen ; encoding: [0x00,0x10,0x50,0xe0,0x02,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 53 | |
| 54 | buffer_load_dword v1, v2, s[4:7], s1 offen offset:4 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 55 | // SICI: buffer_load_dword v1, v2, s[4:7], s1 offen offset:4 ; encoding: [0x04,0x10,0x30,0xe0,0x02,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 56 | // VI: buffer_load_dword v1, v2, s[4:7], s1 offen offset:4 ; encoding: [0x04,0x10,0x50,0xe0,0x02,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 57 | |
| 58 | buffer_load_dword v1, v2, s[4:7], s1 offen offset:4 glc |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 59 | // SICI: buffer_load_dword v1, v2, s[4:7], s1 offen offset:4 glc ; encoding: [0x04,0x50,0x30,0xe0,0x02,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 60 | // VI: buffer_load_dword v1, v2, s[4:7], s1 offen offset:4 glc ; encoding: [0x04,0x50,0x50,0xe0,0x02,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 61 | |
| 62 | buffer_load_dword v1, v2, s[4:7], s1 offen offset:4 slc |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 63 | // SICI: buffer_load_dword v1, v2, s[4:7], s1 offen offset:4 slc ; encoding: [0x04,0x10,0x30,0xe0,0x02,0x01,0x41,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 64 | // VI: buffer_load_dword v1, v2, s[4:7], s1 offen offset:4 slc ; encoding: [0x04,0x10,0x52,0xe0,0x02,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 65 | |
| 66 | buffer_load_dword v1, v2, s[4:7], s1 offen offset:4 tfe |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 67 | // SICI: buffer_load_dword v1, v2, s[4:7], s1 offen offset:4 tfe ; encoding: [0x04,0x10,0x30,0xe0,0x02,0x01,0x81,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 68 | // VI: buffer_load_dword v1, v2, s[4:7], s1 offen offset:4 tfe ; encoding: [0x04,0x10,0x50,0xe0,0x02,0x01,0x81,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 69 | |
Nikolay Haustov | ea8febd | 2016-03-01 08:34:43 +0000 | [diff] [blame] | 70 | buffer_load_dword v1, v2, s[4:7], s1 offen glc tfe |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 71 | // SICI: buffer_load_dword v1, v2, s[4:7], s1 offen glc tfe ; encoding: [0x00,0x50,0x30,0xe0,0x02,0x01,0x81,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 72 | // VI: buffer_load_dword v1, v2, s[4:7], s1 offen glc tfe ; encoding: [0x00,0x50,0x50,0xe0,0x02,0x01,0x81,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 73 | |
Nikolay Haustov | ea8febd | 2016-03-01 08:34:43 +0000 | [diff] [blame] | 74 | buffer_load_dword v1, v2, s[4:7], s1 offen offset:4 glc slc tfe |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 75 | // SICI: buffer_load_dword v1, v2, s[4:7], s1 offen offset:4 glc slc tfe ; encoding: [0x04,0x50,0x30,0xe0,0x02,0x01,0xc1,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 76 | // VI: buffer_load_dword v1, v2, s[4:7], s1 offen offset:4 glc slc tfe ; encoding: [0x04,0x50,0x52,0xe0,0x02,0x01,0x81,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 77 | |
| 78 | //===----------------------------------------------------------------------===// |
| 79 | // load - vgpr index |
| 80 | //===----------------------------------------------------------------------===// |
| 81 | |
| 82 | buffer_load_dword v1, v2, s[4:7], s1 idxen |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 83 | // SICI: buffer_load_dword v1, v2, s[4:7], s1 idxen ; encoding: [0x00,0x20,0x30,0xe0,0x02,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 84 | // VI: buffer_load_dword v1, v2, s[4:7], s1 idxen ; encoding: [0x00,0x20,0x50,0xe0,0x02,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 85 | |
| 86 | buffer_load_dword v1, v2, s[4:7], s1 idxen offset:4 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 87 | // SICI: buffer_load_dword v1, v2, s[4:7], s1 idxen offset:4 ; encoding: [0x04,0x20,0x30,0xe0,0x02,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 88 | // VI: buffer_load_dword v1, v2, s[4:7], s1 idxen offset:4 ; encoding: [0x04,0x20,0x50,0xe0,0x02,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 89 | |
| 90 | buffer_load_dword v1, v2, s[4:7], s1 idxen offset:4 glc |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 91 | // SICI: buffer_load_dword v1, v2, s[4:7], s1 idxen offset:4 glc ; encoding: [0x04,0x60,0x30,0xe0,0x02,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 92 | // VI: buffer_load_dword v1, v2, s[4:7], s1 idxen offset:4 glc ; encoding: [0x04,0x60,0x50,0xe0,0x02,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 93 | |
| 94 | buffer_load_dword v1, v2, s[4:7], s1 idxen offset:4 slc |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 95 | // SICI: buffer_load_dword v1, v2, s[4:7], s1 idxen offset:4 slc ; encoding: [0x04,0x20,0x30,0xe0,0x02,0x01,0x41,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 96 | // VI: buffer_load_dword v1, v2, s[4:7], s1 idxen offset:4 slc ; encoding: [0x04,0x20,0x52,0xe0,0x02,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 97 | |
| 98 | buffer_load_dword v1, v2, s[4:7], s1 idxen offset:4 tfe |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 99 | // SICI: buffer_load_dword v1, v2, s[4:7], s1 idxen offset:4 tfe ; encoding: [0x04,0x20,0x30,0xe0,0x02,0x01,0x81,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 100 | // VI: buffer_load_dword v1, v2, s[4:7], s1 idxen offset:4 tfe ; encoding: [0x04,0x20,0x50,0xe0,0x02,0x01,0x81,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 101 | |
Nikolay Haustov | ea8febd | 2016-03-01 08:34:43 +0000 | [diff] [blame] | 102 | buffer_load_dword v1, v2, s[4:7], s1 idxen glc tfe |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 103 | // SICI: buffer_load_dword v1, v2, s[4:7], s1 idxen glc tfe ; encoding: [0x00,0x60,0x30,0xe0,0x02,0x01,0x81,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 104 | // VI: buffer_load_dword v1, v2, s[4:7], s1 idxen glc tfe ; encoding: [0x00,0x60,0x50,0xe0,0x02,0x01,0x81,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 105 | |
Nikolay Haustov | ea8febd | 2016-03-01 08:34:43 +0000 | [diff] [blame] | 106 | buffer_load_dword v1, v2, s[4:7], s1 idxen offset:4 glc slc tfe |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 107 | // SICI: buffer_load_dword v1, v2, s[4:7], s1 idxen offset:4 glc slc tfe ; encoding: [0x04,0x60,0x30,0xe0,0x02,0x01,0xc1,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 108 | // VI: buffer_load_dword v1, v2, s[4:7], s1 idxen offset:4 glc slc tfe ; encoding: [0x04,0x60,0x52,0xe0,0x02,0x01,0x81,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 109 | |
| 110 | //===----------------------------------------------------------------------===// |
| 111 | // load - vgpr index and offset |
| 112 | //===----------------------------------------------------------------------===// |
| 113 | |
| 114 | buffer_load_dword v1, v[2:3], s[4:7], s1 idxen offen |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 115 | // SICI: buffer_load_dword v1, v[2:3], s[4:7], s1 idxen offen ; encoding: [0x00,0x30,0x30,0xe0,0x02,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 116 | // VI: buffer_load_dword v1, v[2:3], s[4:7], s1 idxen offen ; encoding: [0x00,0x30,0x50,0xe0,0x02,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 117 | |
| 118 | buffer_load_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 119 | // SICI: buffer_load_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 ; encoding: [0x04,0x30,0x30,0xe0,0x02,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 120 | // VI: buffer_load_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 ; encoding: [0x04,0x30,0x50,0xe0,0x02,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 121 | |
| 122 | buffer_load_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 glc |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 123 | // SICI: buffer_load_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 glc ; encoding: [0x04,0x70,0x30,0xe0,0x02,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 124 | // VI: buffer_load_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 glc ; encoding: [0x04,0x70,0x50,0xe0,0x02,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 125 | |
| 126 | buffer_load_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 slc |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 127 | // SICI: buffer_load_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 slc ; encoding: [0x04,0x30,0x30,0xe0,0x02,0x01,0x41,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 128 | // VI: buffer_load_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 slc ; encoding: [0x04,0x30,0x52,0xe0,0x02,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 129 | |
| 130 | buffer_load_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 tfe |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 131 | // SICI: buffer_load_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 tfe ; encoding: [0x04,0x30,0x30,0xe0,0x02,0x01,0x81,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 132 | // VI: buffer_load_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 tfe ; encoding: [0x04,0x30,0x50,0xe0,0x02,0x01,0x81,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 133 | |
Nikolay Haustov | ea8febd | 2016-03-01 08:34:43 +0000 | [diff] [blame] | 134 | buffer_load_dword v1, v[2:3], s[4:7], s1 idxen offen glc tfe |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 135 | // SICI: buffer_load_dword v1, v[2:3], s[4:7], s1 idxen offen glc tfe ; encoding: [0x00,0x70,0x30,0xe0,0x02,0x01,0x81,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 136 | // VI: buffer_load_dword v1, v[2:3], s[4:7], s1 idxen offen glc tfe ; encoding: [0x00,0x70,0x50,0xe0,0x02,0x01,0x81,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 137 | |
Nikolay Haustov | ea8febd | 2016-03-01 08:34:43 +0000 | [diff] [blame] | 138 | buffer_load_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 glc slc tfe |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 139 | // SICI: buffer_load_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 glc slc tfe ; encoding: [0x04,0x70,0x30,0xe0,0x02,0x01,0xc1,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 140 | // VI: buffer_load_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 glc slc tfe ; encoding: [0x04,0x70,0x52,0xe0,0x02,0x01,0x81,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 141 | |
| 142 | //===----------------------------------------------------------------------===// |
| 143 | // load - addr64 |
| 144 | //===----------------------------------------------------------------------===// |
| 145 | |
| 146 | buffer_load_dword v1, v[2:3], s[4:7], s1 addr64 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 147 | // SICI: buffer_load_dword v1, v[2:3], s[4:7], s1 addr64 ; encoding: [0x00,0x80,0x30,0xe0,0x02,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 148 | // NOVI: error: instruction not supported on this GPU |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 149 | |
| 150 | buffer_load_dword v1, v[2:3], s[4:7], s1 addr64 offset:4 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 151 | // SICI: buffer_load_dword v1, v[2:3], s[4:7], s1 addr64 offset:4 ; encoding: [0x04,0x80,0x30,0xe0,0x02,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 152 | // NOVI: error: instruction not supported on this GPU |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 153 | |
| 154 | buffer_load_dword v1, v[2:3], s[4:7], s1 addr64 offset:4 glc |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 155 | // SICI: buffer_load_dword v1, v[2:3], s[4:7], s1 addr64 offset:4 glc ; encoding: [0x04,0xc0,0x30,0xe0,0x02,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 156 | // NOVI: error: instruction not supported on this GPU |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 157 | |
| 158 | buffer_load_dword v1, v[2:3], s[4:7], s1 addr64 offset:4 slc |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 159 | // SICI: buffer_load_dword v1, v[2:3], s[4:7], s1 addr64 offset:4 slc ; encoding: [0x04,0x80,0x30,0xe0,0x02,0x01,0x41,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 160 | // NOVI: error: instruction not supported on this GPU |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 161 | |
| 162 | buffer_load_dword v1, v[2:3], s[4:7], s1 addr64 offset:4 tfe |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 163 | // SICI: buffer_load_dword v1, v[2:3], s[4:7], s1 addr64 offset:4 tfe ; encoding: [0x04,0x80,0x30,0xe0,0x02,0x01,0x81,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 164 | // NOVI: error: instruction not supported on this GPU |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 165 | |
Nikolay Haustov | ea8febd | 2016-03-01 08:34:43 +0000 | [diff] [blame] | 166 | buffer_load_dword v1, v[2:3], s[4:7], s1 addr64 glc tfe |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 167 | // SICI: buffer_load_dword v1, v[2:3], s[4:7], s1 addr64 glc tfe ; encoding: [0x00,0xc0,0x30,0xe0,0x02,0x01,0x81,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 168 | // NOVI: error: instruction not supported on this GPU |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 169 | |
Nikolay Haustov | ea8febd | 2016-03-01 08:34:43 +0000 | [diff] [blame] | 170 | buffer_load_dword v1, v[2:3], s[4:7], s1 addr64 offset:4 glc slc tfe |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 171 | // SICI: buffer_load_dword v1, v[2:3], s[4:7], s1 addr64 offset:4 glc slc tfe ; encoding: [0x04,0xc0,0x30,0xe0,0x02,0x01,0xc1,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 172 | // NOVI: error: instruction not supported on this GPU |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 173 | |
| 174 | //===----------------------------------------------------------------------===// |
| 175 | // store - immediate offset only |
| 176 | //===----------------------------------------------------------------------===// |
| 177 | |
| 178 | buffer_store_dword v1, s[4:7], s1 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 179 | // SICI: buffer_store_dword v1, s[4:7], s1 ; encoding: [0x00,0x00,0x70,0xe0,0x00,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 180 | // VI: buffer_store_dword v1, s[4:7], s1 ; encoding: [0x00,0x00,0x70,0xe0,0x00,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 181 | |
| 182 | buffer_store_dword v1, s[4:7], s1 offset:4 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 183 | // SICI: buffer_store_dword v1, s[4:7], s1 offset:4 ; encoding: [0x04,0x00,0x70,0xe0,0x00,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 184 | // VI: buffer_store_dword v1, s[4:7], s1 offset:4 ; encoding: [0x04,0x00,0x70,0xe0,0x00,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 185 | |
| 186 | buffer_store_dword v1, s[4:7], s1 offset:4 glc |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 187 | // SICI: buffer_store_dword v1, s[4:7], s1 offset:4 glc ; encoding: [0x04,0x40,0x70,0xe0,0x00,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 188 | // VI: buffer_store_dword v1, s[4:7], s1 offset:4 glc ; encoding: [0x04,0x40,0x70,0xe0,0x00,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 189 | |
| 190 | buffer_store_dword v1, s[4:7], s1 offset:4 slc |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 191 | // SICI: buffer_store_dword v1, s[4:7], s1 offset:4 slc ; encoding: [0x04,0x00,0x70,0xe0,0x00,0x01,0x41,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 192 | // VI: buffer_store_dword v1, s[4:7], s1 offset:4 slc ; encoding: [0x04,0x00,0x72,0xe0,0x00,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 193 | |
| 194 | buffer_store_dword v1, s[4:7], s1 offset:4 tfe |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 195 | // SICI: buffer_store_dword v1, s[4:7], s1 offset:4 tfe ; encoding: [0x04,0x00,0x70,0xe0,0x00,0x01,0x81,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 196 | // VI: buffer_store_dword v1, s[4:7], s1 offset:4 tfe ; encoding: [0x04,0x00,0x70,0xe0,0x00,0x01,0x81,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 197 | |
Nikolay Haustov | ea8febd | 2016-03-01 08:34:43 +0000 | [diff] [blame] | 198 | buffer_store_dword v1, s[4:7], s1 glc tfe |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 199 | // SICI: buffer_store_dword v1, s[4:7], s1 glc tfe ; encoding: [0x00,0x40,0x70,0xe0,0x00,0x01,0x81,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 200 | // VI: buffer_store_dword v1, s[4:7], s1 glc tfe ; encoding: [0x00,0x40,0x70,0xe0,0x00,0x01,0x81,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 201 | |
Nikolay Haustov | ea8febd | 2016-03-01 08:34:43 +0000 | [diff] [blame] | 202 | buffer_store_dword v1, s[4:7], s1 offset:4 glc slc tfe |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 203 | // SICI: buffer_store_dword v1, s[4:7], s1 offset:4 glc slc tfe ; encoding: [0x04,0x40,0x70,0xe0,0x00,0x01,0xc1,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 204 | // VI: buffer_store_dword v1, s[4:7], s1 offset:4 glc slc tfe ; encoding: [0x04,0x40,0x72,0xe0,0x00,0x01,0x81,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 205 | |
| 206 | //===----------------------------------------------------------------------===// |
| 207 | // store - vgpr offset |
| 208 | //===----------------------------------------------------------------------===// |
| 209 | |
| 210 | buffer_store_dword v1, v2, s[4:7], s1 offen |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 211 | // SICI: buffer_store_dword v1, v2, s[4:7], s1 offen ; encoding: [0x00,0x10,0x70,0xe0,0x02,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 212 | // VI: buffer_store_dword v1, v2, s[4:7], s1 offen ; encoding: [0x00,0x10,0x70,0xe0,0x02,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 213 | |
| 214 | buffer_store_dword v1, v2, s[4:7], s1 offen offset:4 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 215 | // SICI: buffer_store_dword v1, v2, s[4:7], s1 offen offset:4 ; encoding: [0x04,0x10,0x70,0xe0,0x02,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 216 | // VI: buffer_store_dword v1, v2, s[4:7], s1 offen offset:4 ; encoding: [0x04,0x10,0x70,0xe0,0x02,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 217 | |
| 218 | buffer_store_dword v1, v2, s[4:7], s1 offen offset:4 glc |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 219 | // SICI: buffer_store_dword v1, v2, s[4:7], s1 offen offset:4 glc ; encoding: [0x04,0x50,0x70,0xe0,0x02,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 220 | // VI: buffer_store_dword v1, v2, s[4:7], s1 offen offset:4 glc ; encoding: [0x04,0x50,0x70,0xe0,0x02,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 221 | |
| 222 | buffer_store_dword v1, v2, s[4:7], s1 offen offset:4 slc |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 223 | // SICI: buffer_store_dword v1, v2, s[4:7], s1 offen offset:4 slc ; encoding: [0x04,0x10,0x70,0xe0,0x02,0x01,0x41,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 224 | // VI: buffer_store_dword v1, v2, s[4:7], s1 offen offset:4 slc ; encoding: [0x04,0x10,0x72,0xe0,0x02,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 225 | |
| 226 | buffer_store_dword v1, v2, s[4:7], s1 offen offset:4 tfe |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 227 | // SICI: buffer_store_dword v1, v2, s[4:7], s1 offen offset:4 tfe ; encoding: [0x04,0x10,0x70,0xe0,0x02,0x01,0x81,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 228 | // VI: buffer_store_dword v1, v2, s[4:7], s1 offen offset:4 tfe ; encoding: [0x04,0x10,0x70,0xe0,0x02,0x01,0x81,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 229 | |
Nikolay Haustov | ea8febd | 2016-03-01 08:34:43 +0000 | [diff] [blame] | 230 | buffer_store_dword v1, v2, s[4:7], s1 offen glc tfe |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 231 | // SICI: buffer_store_dword v1, v2, s[4:7], s1 offen glc tfe ; encoding: [0x00,0x50,0x70,0xe0,0x02,0x01,0x81,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 232 | // VI: buffer_store_dword v1, v2, s[4:7], s1 offen glc tfe ; encoding: [0x00,0x50,0x70,0xe0,0x02,0x01,0x81,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 233 | |
Nikolay Haustov | ea8febd | 2016-03-01 08:34:43 +0000 | [diff] [blame] | 234 | buffer_store_dword v1, v2, s[4:7], s1 offen offset:4 glc slc tfe |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 235 | // SICI: buffer_store_dword v1, v2, s[4:7], s1 offen offset:4 glc slc tfe ; encoding: [0x04,0x50,0x70,0xe0,0x02,0x01,0xc1,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 236 | // VI: buffer_store_dword v1, v2, s[4:7], s1 offen offset:4 glc slc tfe ; encoding: [0x04,0x50,0x72,0xe0,0x02,0x01,0x81,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 237 | |
| 238 | //===----------------------------------------------------------------------===// |
| 239 | // store - vgpr index |
| 240 | //===----------------------------------------------------------------------===// |
| 241 | |
| 242 | buffer_store_dword v1, v2, s[4:7], s1 idxen |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 243 | // SICI: buffer_store_dword v1, v2, s[4:7], s1 idxen ; encoding: [0x00,0x20,0x70,0xe0,0x02,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 244 | // VI: buffer_store_dword v1, v2, s[4:7], s1 idxen ; encoding: [0x00,0x20,0x70,0xe0,0x02,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 245 | |
| 246 | buffer_store_dword v1, v2, s[4:7], s1 idxen offset:4 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 247 | // SICI: buffer_store_dword v1, v2, s[4:7], s1 idxen offset:4 ; encoding: [0x04,0x20,0x70,0xe0,0x02,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 248 | // VI: buffer_store_dword v1, v2, s[4:7], s1 idxen offset:4 ; encoding: [0x04,0x20,0x70,0xe0,0x02,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 249 | |
| 250 | buffer_store_dword v1, v2, s[4:7], s1 idxen offset:4 glc |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 251 | // SICI: buffer_store_dword v1, v2, s[4:7], s1 idxen offset:4 glc ; encoding: [0x04,0x60,0x70,0xe0,0x02,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 252 | // VI: buffer_store_dword v1, v2, s[4:7], s1 idxen offset:4 glc ; encoding: [0x04,0x60,0x70,0xe0,0x02,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 253 | |
| 254 | buffer_store_dword v1, v2, s[4:7], s1 idxen offset:4 slc |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 255 | // SICI: buffer_store_dword v1, v2, s[4:7], s1 idxen offset:4 slc ; encoding: [0x04,0x20,0x70,0xe0,0x02,0x01,0x41,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 256 | // VI: buffer_store_dword v1, v2, s[4:7], s1 idxen offset:4 slc ; encoding: [0x04,0x20,0x72,0xe0,0x02,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 257 | |
| 258 | buffer_store_dword v1, v2, s[4:7], s1 idxen offset:4 tfe |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 259 | // SICI: buffer_store_dword v1, v2, s[4:7], s1 idxen offset:4 tfe ; encoding: [0x04,0x20,0x70,0xe0,0x02,0x01,0x81,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 260 | // VI: buffer_store_dword v1, v2, s[4:7], s1 idxen offset:4 tfe ; encoding: [0x04,0x20,0x70,0xe0,0x02,0x01,0x81,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 261 | |
Nikolay Haustov | ea8febd | 2016-03-01 08:34:43 +0000 | [diff] [blame] | 262 | buffer_store_dword v1, v2, s[4:7], s1 idxen glc tfe |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 263 | // SICI: buffer_store_dword v1, v2, s[4:7], s1 idxen glc tfe ; encoding: [0x00,0x60,0x70,0xe0,0x02,0x01,0x81,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 264 | // VI: buffer_store_dword v1, v2, s[4:7], s1 idxen glc tfe ; encoding: [0x00,0x60,0x70,0xe0,0x02,0x01,0x81,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 265 | |
Nikolay Haustov | ea8febd | 2016-03-01 08:34:43 +0000 | [diff] [blame] | 266 | buffer_store_dword v1, v2, s[4:7], s1 idxen offset:4 glc slc tfe |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 267 | // SICI: buffer_store_dword v1, v2, s[4:7], s1 idxen offset:4 glc slc tfe ; encoding: [0x04,0x60,0x70,0xe0,0x02,0x01,0xc1,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 268 | // VI: buffer_store_dword v1, v2, s[4:7], s1 idxen offset:4 glc slc tfe ; encoding: [0x04,0x60,0x72,0xe0,0x02,0x01,0x81,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 269 | |
| 270 | //===----------------------------------------------------------------------===// |
| 271 | // store - vgpr index and offset |
| 272 | //===----------------------------------------------------------------------===// |
| 273 | |
| 274 | buffer_store_dword v1, v[2:3], s[4:7], s1 idxen offen |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 275 | // SICI: buffer_store_dword v1, v[2:3], s[4:7], s1 idxen offen ; encoding: [0x00,0x30,0x70,0xe0,0x02,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 276 | // VI: buffer_store_dword v1, v[2:3], s[4:7], s1 idxen offen ; encoding: [0x00,0x30,0x70,0xe0,0x02,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 277 | |
| 278 | buffer_store_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 279 | // SICI: buffer_store_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 ; encoding: [0x04,0x30,0x70,0xe0,0x02,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 280 | // VI: buffer_store_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 ; encoding: [0x04,0x30,0x70,0xe0,0x02,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 281 | |
| 282 | buffer_store_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 glc |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 283 | // SICI: buffer_store_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 glc ; encoding: [0x04,0x70,0x70,0xe0,0x02,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 284 | // VI: buffer_store_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 glc ; encoding: [0x04,0x70,0x70,0xe0,0x02,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 285 | |
| 286 | buffer_store_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 slc |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 287 | // SICI: buffer_store_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 slc ; encoding: [0x04,0x30,0x70,0xe0,0x02,0x01,0x41,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 288 | // VI: buffer_store_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 slc ; encoding: [0x04,0x30,0x72,0xe0,0x02,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 289 | |
| 290 | buffer_store_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 tfe |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 291 | // SICI: buffer_store_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 tfe ; encoding: [0x04,0x30,0x70,0xe0,0x02,0x01,0x81,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 292 | // VI: buffer_store_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 tfe ; encoding: [0x04,0x30,0x70,0xe0,0x02,0x01,0x81,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 293 | |
Nikolay Haustov | ea8febd | 2016-03-01 08:34:43 +0000 | [diff] [blame] | 294 | buffer_store_dword v1, v[2:3], s[4:7], s1 idxen offen glc tfe |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 295 | // SICI: buffer_store_dword v1, v[2:3], s[4:7], s1 idxen offen glc tfe ; encoding: [0x00,0x70,0x70,0xe0,0x02,0x01,0x81,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 296 | // VI: buffer_store_dword v1, v[2:3], s[4:7], s1 idxen offen glc tfe ; encoding: [0x00,0x70,0x70,0xe0,0x02,0x01,0x81,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 297 | |
Nikolay Haustov | ea8febd | 2016-03-01 08:34:43 +0000 | [diff] [blame] | 298 | buffer_store_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 glc slc tfe |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 299 | // SICI: buffer_store_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 glc slc tfe ; encoding: [0x04,0x70,0x70,0xe0,0x02,0x01,0xc1,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 300 | // VI: buffer_store_dword v1, v[2:3], s[4:7], s1 idxen offen offset:4 glc slc tfe ; encoding: [0x04,0x70,0x72,0xe0,0x02,0x01,0x81,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 301 | |
| 302 | //===----------------------------------------------------------------------===// |
| 303 | // store - addr64 |
| 304 | //===----------------------------------------------------------------------===// |
| 305 | |
| 306 | buffer_store_dword v1, v[2:3], s[4:7], s1 addr64 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 307 | // SICI: buffer_store_dword v1, v[2:3], s[4:7], s1 addr64 ; encoding: [0x00,0x80,0x70,0xe0,0x02,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 308 | // NOVI: error: instruction not supported on this GPU |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 309 | |
| 310 | buffer_store_dword v1, v[2:3], s[4:7], s1 addr64 offset:4 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 311 | // SICI: buffer_store_dword v1, v[2:3], s[4:7], s1 addr64 offset:4 ; encoding: [0x04,0x80,0x70,0xe0,0x02,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 312 | // NOVI: error: instruction not supported on this GPU |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 313 | |
| 314 | buffer_store_dword v1, v[2:3], s[4:7], s1 addr64 offset:4 glc |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 315 | // SICI: buffer_store_dword v1, v[2:3], s[4:7], s1 addr64 offset:4 glc ; encoding: [0x04,0xc0,0x70,0xe0,0x02,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 316 | // NOVI: error: instruction not supported on this GPU |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 317 | |
| 318 | buffer_store_dword v1, v[2:3], s[4:7], s1 addr64 offset:4 slc |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 319 | // SICI: buffer_store_dword v1, v[2:3], s[4:7], s1 addr64 offset:4 slc ; encoding: [0x04,0x80,0x70,0xe0,0x02,0x01,0x41,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 320 | // NOVI: error: instruction not supported on this GPU |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 321 | |
| 322 | buffer_store_dword v1, v[2:3], s[4:7], s1 addr64 offset:4 tfe |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 323 | // SICI: buffer_store_dword v1, v[2:3], s[4:7], s1 addr64 offset:4 tfe ; encoding: [0x04,0x80,0x70,0xe0,0x02,0x01,0x81,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 324 | // NOVI: error: instruction not supported on this GPU |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 325 | |
Nikolay Haustov | ea8febd | 2016-03-01 08:34:43 +0000 | [diff] [blame] | 326 | buffer_store_dword v1, v[2:3], s[4:7], s1 addr64 glc tfe |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 327 | // SICI: buffer_store_dword v1, v[2:3], s[4:7], s1 addr64 glc tfe ; encoding: [0x00,0xc0,0x70,0xe0,0x02,0x01,0x81,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 328 | // NOVI: error: instruction not supported on this GPU |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 329 | |
Nikolay Haustov | ea8febd | 2016-03-01 08:34:43 +0000 | [diff] [blame] | 330 | buffer_store_dword v1, v[2:3], s[4:7], s1 addr64 offset:4 glc slc tfe |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 331 | // SICI: buffer_store_dword v1, v[2:3], s[4:7], s1 addr64 offset:4 glc slc tfe ; encoding: [0x04,0xc0,0x70,0xe0,0x02,0x01,0xc1,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 332 | // NOVI: error: instruction not supported on this GPU |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 333 | |
| 334 | //===----------------------------------------------------------------------===// |
| 335 | // Instructions |
| 336 | //===----------------------------------------------------------------------===// |
| 337 | |
| 338 | buffer_load_format_x v1, s[4:7], s1 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 339 | // SICI: buffer_load_format_x v1, s[4:7], s1 ; encoding: [0x00,0x00,0x00,0xe0,0x00,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 340 | // VI: buffer_load_format_x v1, s[4:7], s1 ; encoding: [0x00,0x00,0x00,0xe0,0x00,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 341 | |
| 342 | buffer_load_format_xy v[1:2], s[4:7], s1 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 343 | // SICI: buffer_load_format_xy v[1:2], s[4:7], s1 ; encoding: [0x00,0x00,0x04,0xe0,0x00,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 344 | // VI: buffer_load_format_xy v[1:2], s[4:7], s1 ; encoding: [0x00,0x00,0x04,0xe0,0x00,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 345 | |
| 346 | buffer_load_format_xyz v[1:3], s[4:7], s1 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 347 | // SICI: buffer_load_format_xyz v[1:3], s[4:7], s1 ; encoding: [0x00,0x00,0x08,0xe0,0x00,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 348 | // VI: buffer_load_format_xyz v[1:3], s[4:7], s1 ; encoding: [0x00,0x00,0x08,0xe0,0x00,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 349 | |
| 350 | buffer_load_format_xyzw v[1:4], s[4:7], s1 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 351 | // SICI: buffer_load_format_xyzw v[1:4], s[4:7], s1 ; encoding: [0x00,0x00,0x0c,0xe0,0x00,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 352 | // VI: buffer_load_format_xyzw v[1:4], s[4:7], s1 ; encoding: [0x00,0x00,0x0c,0xe0,0x00,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 353 | |
| 354 | buffer_store_format_x v1, s[4:7], s1 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 355 | // SICI: buffer_store_format_x v1, s[4:7], s1 ; encoding: [0x00,0x00,0x10,0xe0,0x00,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 356 | // VI: buffer_store_format_x v1, s[4:7], s1 ; encoding: [0x00,0x00,0x10,0xe0,0x00,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 357 | |
| 358 | buffer_store_format_xy v[1:2], s[4:7], s1 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 359 | // SICI: buffer_store_format_xy v[1:2], s[4:7], s1 ; encoding: [0x00,0x00,0x14,0xe0,0x00,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 360 | // VI: buffer_store_format_xy v[1:2], s[4:7], s1 ; encoding: [0x00,0x00,0x14,0xe0,0x00,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 361 | |
| 362 | buffer_store_format_xyz v[1:3], s[4:7], s1 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 363 | // SICI: buffer_store_format_xyz v[1:3], s[4:7], s1 ; encoding: [0x00,0x00,0x18,0xe0,0x00,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 364 | // VI: buffer_store_format_xyz v[1:3], s[4:7], s1 ; encoding: [0x00,0x00,0x18,0xe0,0x00,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 365 | |
| 366 | buffer_store_format_xyzw v[1:4], s[4:7], s1 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 367 | // SICI: buffer_store_format_xyzw v[1:4], s[4:7], s1 ; encoding: [0x00,0x00,0x1c,0xe0,0x00,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 368 | // VI: buffer_store_format_xyzw v[1:4], s[4:7], s1 ; encoding: [0x00,0x00,0x1c,0xe0,0x00,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 369 | |
| 370 | buffer_load_ubyte v1, s[4:7], s1 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 371 | // SICI: buffer_load_ubyte v1, s[4:7], s1 ; encoding: [0x00,0x00,0x20,0xe0,0x00,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 372 | // VI: buffer_load_ubyte v1, s[4:7], s1 ; encoding: [0x00,0x00,0x40,0xe0,0x00,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 373 | |
| 374 | buffer_load_sbyte v1, s[4:7], s1 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 375 | // SICI: buffer_load_sbyte v1, s[4:7], s1 ; encoding: [0x00,0x00,0x24,0xe0,0x00,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 376 | // VI: buffer_load_sbyte v1, s[4:7], s1 ; encoding: [0x00,0x00,0x44,0xe0,0x00,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 377 | |
| 378 | buffer_load_ushort v1, s[4:7], s1 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 379 | // SICI: buffer_load_ushort v1, s[4:7], s1 ; encoding: [0x00,0x00,0x28,0xe0,0x00,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 380 | // VI: buffer_load_ushort v1, s[4:7], s1 ; encoding: [0x00,0x00,0x48,0xe0,0x00,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 381 | |
| 382 | buffer_load_sshort v1, s[4:7], s1 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 383 | // SICI: buffer_load_sshort v1, s[4:7], s1 ; encoding: [0x00,0x00,0x2c,0xe0,0x00,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 384 | // VI: buffer_load_sshort v1, s[4:7], s1 ; encoding: [0x00,0x00,0x4c,0xe0,0x00,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 385 | |
| 386 | buffer_load_dword v1, s[4:7], s1 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 387 | // SICI: buffer_load_dword v1, s[4:7], s1 ; encoding: [0x00,0x00,0x30,0xe0,0x00,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 388 | // VI: buffer_load_dword v1, s[4:7], s1 ; encoding: [0x00,0x00,0x50,0xe0,0x00,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 389 | |
| 390 | buffer_load_dwordx2 v[1:2], s[4:7], s1 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 391 | // SICI: buffer_load_dwordx2 v[1:2], s[4:7], s1 ; encoding: [0x00,0x00,0x34,0xe0,0x00,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 392 | // VI: buffer_load_dwordx2 v[1:2], s[4:7], s1 ; encoding: [0x00,0x00,0x54,0xe0,0x00,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 393 | |
| 394 | buffer_load_dwordx4 v[1:4], s[4:7], s1 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 395 | // SICI: buffer_load_dwordx4 v[1:4], s[4:7], s1 ; encoding: [0x00,0x00,0x38,0xe0,0x00,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 396 | // VI: buffer_load_dwordx4 v[1:4], s[4:7], s1 ; encoding: [0x00,0x00,0x5c,0xe0,0x00,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 397 | |
| 398 | buffer_store_byte v1, s[4:7], s1 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 399 | // SICI: buffer_store_byte v1, s[4:7], s1 ; encoding: [0x00,0x00,0x60,0xe0,0x00,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 400 | // VI: buffer_store_byte v1, s[4:7], s1 ; encoding: [0x00,0x00,0x60,0xe0,0x00,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 401 | |
| 402 | buffer_store_short v1, s[4:7], s1 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 403 | // SICI: buffer_store_short v1, s[4:7], s1 ; encoding: [0x00,0x00,0x68,0xe0,0x00,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 404 | // VI: buffer_store_short v1, s[4:7], s1 ; encoding: [0x00,0x00,0x68,0xe0,0x00,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 405 | |
| 406 | buffer_store_dword v1 s[4:7], s1 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 407 | // SICI: buffer_store_dword v1, s[4:7], s1 ; encoding: [0x00,0x00,0x70,0xe0,0x00,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 408 | // VI: buffer_store_dword v1, s[4:7], s1 ; encoding: [0x00,0x00,0x70,0xe0,0x00,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 409 | |
| 410 | buffer_store_dwordx2 v[1:2], s[4:7], s1 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 411 | // SICI: buffer_store_dwordx2 v[1:2], s[4:7], s1 ; encoding: [0x00,0x00,0x74,0xe0,0x00,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 412 | // VI: buffer_store_dwordx2 v[1:2], s[4:7], s1 ; encoding: [0x00,0x00,0x74,0xe0,0x00,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 413 | |
| 414 | buffer_store_dwordx4 v[1:4], s[4:7], s1 |
Matt Arsenault | c116767 | 2015-09-24 19:52:15 +0000 | [diff] [blame] | 415 | // SICI: buffer_store_dwordx4 v[1:4], s[4:7], s1 ; encoding: [0x00,0x00,0x78,0xe0,0x00,0x01,0x01,0x01] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 416 | // VI: buffer_store_dwordx4 v[1:4], s[4:7], s1 ; encoding: [0x00,0x00,0x7c,0xe0,0x00,0x01,0x01,0x01] |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 417 | |
Matt Arsenault | d6adfb4 | 2015-09-24 19:52:21 +0000 | [diff] [blame] | 418 | //===----------------------------------------------------------------------===// |
| 419 | // Cache invalidation |
| 420 | //===----------------------------------------------------------------------===// |
| 421 | |
| 422 | buffer_wbinvl1 |
| 423 | // SICI: buffer_wbinvl1 ; encoding: [0x00,0x00,0xc4,0xe1,0x00,0x00,0x00,0x00] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 424 | // VI: buffer_wbinvl1 ; encoding: [0x00,0x00,0xf8,0xe0,0x00,0x00,0x00,0x00] |
Matt Arsenault | d6adfb4 | 2015-09-24 19:52:21 +0000 | [diff] [blame] | 425 | |
| 426 | buffer_wbinvl1_sc |
| 427 | // SI: buffer_wbinvl1_sc ; encoding: [0x00,0x00,0xc0,0xe1,0x00,0x00,0x00,0x00] |
| 428 | // NOCI: error: instruction not supported on this GPU |
| 429 | // NOVI: error: instruction not supported on this GPU |
| 430 | |
| 431 | buffer_wbinvl1_vol |
| 432 | // CI: buffer_wbinvl1_vol ; encoding: [0x00,0x00,0xc0,0xe1,0x00,0x00,0x00,0x00] |
Valery Pykhtin | c0a77c5 | 2016-03-23 04:27:26 +0000 | [diff] [blame^] | 433 | // VI: buffer_wbinvl1_vol ; encoding: [0x00,0x00,0xfc,0xe0,0x00,0x00,0x00,0x00] |
Matt Arsenault | d6adfb4 | 2015-09-24 19:52:21 +0000 | [diff] [blame] | 434 | // NOSI: error: instruction not supported on this GPU |
| 435 | |
Tom Stellard | d7e6f13 | 2015-04-08 01:09:26 +0000 | [diff] [blame] | 436 | // TODO: Atomics |