1# RUN: llvm-mc -triple=amdgcn -mcpu=gfx900 -disassemble -show-encoding < %s | FileCheck -strict-whitespace %s 2 3# CHECK: s_load_dword s5, s[2:3], s0 ; encoding: [0x41,0x01,0x00,0xc0,0x00,0x00,0x00,0x00] 40x41,0x01,0x00,0xc0,0x00,0x00,0x00,0x00 5 6# CHECK: s_load_dword s101, s[2:3], s0 ; encoding: [0x41,0x19,0x00,0xc0,0x00,0x00,0x00,0x00] 70x41,0x19,0x00,0xc0,0x00,0x00,0x00,0x00 8 9# CHECK: s_load_dword flat_scratch_lo, s[2:3], s0 ; encoding: [0x81,0x19,0x00,0xc0,0x00,0x00,0x00,0x00] 100x81,0x19,0x00,0xc0,0x00,0x00,0x00,0x00 11 12# CHECK: s_load_dword flat_scratch_hi, s[2:3], s0 ; encoding: [0xc1,0x19,0x00,0xc0,0x00,0x00,0x00,0x00] 130xc1,0x19,0x00,0xc0,0x00,0x00,0x00,0x00 14 15# CHECK: s_load_dword vcc_lo, s[2:3], s0 ; encoding: [0x81,0x1a,0x00,0xc0,0x00,0x00,0x00,0x00] 160x81,0x1a,0x00,0xc0,0x00,0x00,0x00,0x00 17 18# CHECK: s_load_dword vcc_hi, s[2:3], s0 ; encoding: [0xc1,0x1a,0x00,0xc0,0x00,0x00,0x00,0x00] 190xc1,0x1a,0x00,0xc0,0x00,0x00,0x00,0x00 20 21# CHECK: s_load_dword s5, s[4:5], s0 ; encoding: [0x42,0x01,0x00,0xc0,0x00,0x00,0x00,0x00] 220x42,0x01,0x00,0xc0,0x00,0x00,0x00,0x00 23 24# CHECK: s_load_dword s5, s[100:101], s0 ; encoding: [0x72,0x01,0x00,0xc0,0x00,0x00,0x00,0x00] 250x72,0x01,0x00,0xc0,0x00,0x00,0x00,0x00 26 27# CHECK: s_load_dword s5, flat_scratch, s0 ; encoding: [0x73,0x01,0x00,0xc0,0x00,0x00,0x00,0x00] 280x73,0x01,0x00,0xc0,0x00,0x00,0x00,0x00 29 30# CHECK: s_load_dword s5, vcc, s0 ; encoding: [0x75,0x01,0x00,0xc0,0x00,0x00,0x00,0x00] 310x75,0x01,0x00,0xc0,0x00,0x00,0x00,0x00 32 33# CHECK: s_load_dword s5, s[2:3], s101 ; encoding: [0x41,0x01,0x00,0xc0,0x65,0x00,0x00,0x00] 340x41,0x01,0x00,0xc0,0x65,0x00,0x00,0x00 35 36# The SGRP variants can alternatively be encoded with imm=0, soffset_en=1 37# and the offset register encoded in the soffset field with the offset 38# field being disregarded. 39# CHECK: s_load_dword s5, s[2:3], s64 ; encoding: [0x41,0x41,0x00,0xc0,0x00,0x00,0x00,0x80] 400x41,0x41,0x00,0xc0,0x65,0x00,0x00,0x80 41 42# CHECK: s_load_dword s5, s[2:3], flat_scratch_lo ; encoding: [0x41,0x01,0x00,0xc0,0x66,0x00,0x00,0x00] 430x41,0x01,0x00,0xc0,0x66,0x00,0x00,0x00 44 45# CHECK: s_load_dword s5, s[2:3], flat_scratch_hi ; encoding: [0x41,0x01,0x00,0xc0,0x67,0x00,0x00,0x00] 460x41,0x01,0x00,0xc0,0x67,0x00,0x00,0x00 47 48# CHECK: s_load_dword s5, s[2:3], vcc_lo ; encoding: [0x41,0x01,0x00,0xc0,0x6a,0x00,0x00,0x00] 490x41,0x01,0x00,0xc0,0x6a,0x00,0x00,0x00 50 51# CHECK: s_load_dword s5, s[2:3], vcc_hi ; encoding: [0x41,0x01,0x00,0xc0,0x6b,0x00,0x00,0x00] 520x41,0x01,0x00,0xc0,0x6b,0x00,0x00,0x00 53 54# CHECK: s_load_dword s5, s[2:3], m0 ; encoding: [0x41,0x01,0x00,0xc0,0x7c,0x00,0x00,0x00] 550x41,0x01,0x00,0xc0,0x7c,0x00,0x00,0x00 56 57# CHECK: s_load_dword s5, s[2:3], 0x0 ; encoding: [0x41,0x01,0x02,0xc0,0x00,0x00,0x00,0x00] 580x41,0x01,0x02,0xc0,0x00,0x00,0x00,0x00 59 60# CHECK: s_load_dword s5, s[2:3], s0 offset:0x12345 ; encoding: [0x41,0x41,0x02,0xc0,0x45,0x23,0x01,0x00] 610x41,0x41,0x02,0xc0,0x45,0x23,0x01,0x00 62 63# SP3 prefers to decode instructions with imm=1 and soffset_en=1 to the 64# form with the 'offset:' modifier, even if the offset is 0. 65# CHECK: s_load_dword s5, s[2:3], s0 offset:0x0 ; encoding: [0x41,0x41,0x02,0xc0,0x00,0x00,0x00,0x00] 660x41,0x41,0x02,0xc0,0x00,0x00,0x00,0x00 67 68# CHECK: s_load_dword s5, s[2:3], s0 glc ; encoding: [0x41,0x01,0x01,0xc0,0x00,0x00,0x00,0x00] 690x41,0x01,0x01,0xc0,0x00,0x00,0x00,0x00 70 71# CHECK: s_load_dwordx2 s[10:11], s[2:3], s0 ; encoding: [0x81,0x02,0x04,0xc0,0x00,0x00,0x00,0x00] 720x81,0x02,0x04,0xc0,0x00,0x00,0x00,0x00 73 74# CHECK: s_load_dwordx2 s[12:13], s[2:3], s0 ; encoding: [0x01,0x03,0x04,0xc0,0x00,0x00,0x00,0x00] 750x01,0x03,0x04,0xc0,0x00,0x00,0x00,0x00 76 77# CHECK: s_load_dwordx2 s[100:101], s[2:3], s0 ; encoding: [0x01,0x19,0x04,0xc0,0x00,0x00,0x00,0x00] 780x01,0x19,0x04,0xc0,0x00,0x00,0x00,0x00 79 80# CHECK: s_load_dwordx2 flat_scratch, s[2:3], s0 ; encoding: [0x81,0x19,0x04,0xc0,0x00,0x00,0x00,0x00] 810x81,0x19,0x04,0xc0,0x00,0x00,0x00,0x00 82 83# CHECK: s_load_dwordx2 vcc, s[2:3], s0 ; encoding: [0x81,0x1a,0x04,0xc0,0x00,0x00,0x00,0x00] 840x81,0x1a,0x04,0xc0,0x00,0x00,0x00,0x00 85 86# CHECK: s_load_dwordx2 s[10:11], s[4:5], s0 ; encoding: [0x82,0x02,0x04,0xc0,0x00,0x00,0x00,0x00] 870x82,0x02,0x04,0xc0,0x00,0x00,0x00,0x00 88 89# CHECK: s_load_dwordx2 s[10:11], s[100:101], s0 ; encoding: [0xb2,0x02,0x04,0xc0,0x00,0x00,0x00,0x00] 900xb2,0x02,0x04,0xc0,0x00,0x00,0x00,0x00 91 92# CHECK: s_load_dwordx2 s[10:11], flat_scratch, s0 ; encoding: [0xb3,0x02,0x04,0xc0,0x00,0x00,0x00,0x00] 930xb3,0x02,0x04,0xc0,0x00,0x00,0x00,0x00 94 95# CHECK: s_load_dwordx2 s[10:11], vcc, s0 ; encoding: [0xb5,0x02,0x04,0xc0,0x00,0x00,0x00,0x00] 960xb5,0x02,0x04,0xc0,0x00,0x00,0x00,0x00 97 98# CHECK: s_load_dwordx2 s[10:11], s[2:3], s101 ; encoding: [0x81,0x02,0x04,0xc0,0x65,0x00,0x00,0x00] 990x81,0x02,0x04,0xc0,0x65,0x00,0x00,0x00 100 101# CHECK: s_load_dwordx2 s[10:11], s[2:3], flat_scratch_lo ; encoding: [0x81,0x02,0x04,0xc0,0x66,0x00,0x00,0x00] 1020x81,0x02,0x04,0xc0,0x66,0x00,0x00,0x00 103 104# CHECK: s_load_dwordx2 s[10:11], s[2:3], flat_scratch_hi ; encoding: [0x81,0x02,0x04,0xc0,0x67,0x00,0x00,0x00] 1050x81,0x02,0x04,0xc0,0x67,0x00,0x00,0x00 106 107# CHECK: s_load_dwordx2 s[10:11], s[2:3], vcc_lo ; encoding: [0x81,0x02,0x04,0xc0,0x6a,0x00,0x00,0x00] 1080x81,0x02,0x04,0xc0,0x6a,0x00,0x00,0x00 109 110# CHECK: s_load_dwordx2 s[10:11], s[2:3], vcc_hi ; encoding: [0x81,0x02,0x04,0xc0,0x6b,0x00,0x00,0x00] 1110x81,0x02,0x04,0xc0,0x6b,0x00,0x00,0x00 112 113# CHECK: s_load_dwordx2 s[10:11], s[2:3], m0 ; encoding: [0x81,0x02,0x04,0xc0,0x7c,0x00,0x00,0x00] 1140x81,0x02,0x04,0xc0,0x7c,0x00,0x00,0x00 115 116# CHECK: s_load_dwordx2 s[10:11], s[2:3], 0x0 ; encoding: [0x81,0x02,0x06,0xc0,0x00,0x00,0x00,0x00] 1170x81,0x02,0x06,0xc0,0x00,0x00,0x00,0x00 118 119# CHECK: s_load_dwordx2 s[10:11], s[2:3], s0 offset:0x12345 ; encoding: [0x81,0x42,0x06,0xc0,0x45,0x23,0x01,0x00] 1200x81,0x42,0x06,0xc0,0x45,0x23,0x01,0x00 121 122# CHECK: s_load_dwordx2 s[10:11], s[2:3], s0 glc ; encoding: [0x81,0x02,0x05,0xc0,0x00,0x00,0x00,0x00] 1230x81,0x02,0x05,0xc0,0x00,0x00,0x00,0x00 124 125# CHECK: s_load_dwordx4 s[20:23], s[2:3], s0 ; encoding: [0x01,0x05,0x08,0xc0,0x00,0x00,0x00,0x00] 1260x01,0x05,0x08,0xc0,0x00,0x00,0x00,0x00 127 128# CHECK: s_load_dwordx4 s[24:27], s[2:3], s0 ; encoding: [0x01,0x06,0x08,0xc0,0x00,0x00,0x00,0x00] 1290x01,0x06,0x08,0xc0,0x00,0x00,0x00,0x00 130 131# CHECK: s_load_dwordx4 s[96:99], s[2:3], s0 ; encoding: [0x01,0x18,0x08,0xc0,0x00,0x00,0x00,0x00] 1320x01,0x18,0x08,0xc0,0x00,0x00,0x00,0x00 133 134# CHECK: s_load_dwordx4 s[20:23], s[4:5], s0 ; encoding: [0x02,0x05,0x08,0xc0,0x00,0x00,0x00,0x00] 1350x02,0x05,0x08,0xc0,0x00,0x00,0x00,0x00 136 137# CHECK: s_load_dwordx4 s[20:23], s[100:101], s0 ; encoding: [0x32,0x05,0x08,0xc0,0x00,0x00,0x00,0x00] 1380x32,0x05,0x08,0xc0,0x00,0x00,0x00,0x00 139 140# CHECK: s_load_dwordx4 s[20:23], flat_scratch, s0 ; encoding: [0x33,0x05,0x08,0xc0,0x00,0x00,0x00,0x00] 1410x33,0x05,0x08,0xc0,0x00,0x00,0x00,0x00 142 143# CHECK: s_load_dwordx4 s[20:23], vcc, s0 ; encoding: [0x35,0x05,0x08,0xc0,0x00,0x00,0x00,0x00] 1440x35,0x05,0x08,0xc0,0x00,0x00,0x00,0x00 145 146# CHECK: s_load_dwordx4 s[20:23], s[2:3], s101 ; encoding: [0x01,0x05,0x08,0xc0,0x65,0x00,0x00,0x00] 1470x01,0x05,0x08,0xc0,0x65,0x00,0x00,0x00 148 149# CHECK: s_load_dwordx4 s[20:23], s[2:3], flat_scratch_lo ; encoding: [0x01,0x05,0x08,0xc0,0x66,0x00,0x00,0x00] 1500x01,0x05,0x08,0xc0,0x66,0x00,0x00,0x00 151 152# CHECK: s_load_dwordx4 s[20:23], s[2:3], flat_scratch_hi ; encoding: [0x01,0x05,0x08,0xc0,0x67,0x00,0x00,0x00] 1530x01,0x05,0x08,0xc0,0x67,0x00,0x00,0x00 154 155# CHECK: s_load_dwordx4 s[20:23], s[2:3], vcc_lo ; encoding: [0x01,0x05,0x08,0xc0,0x6a,0x00,0x00,0x00] 1560x01,0x05,0x08,0xc0,0x6a,0x00,0x00,0x00 157 158# CHECK: s_load_dwordx4 s[20:23], s[2:3], vcc_hi ; encoding: [0x01,0x05,0x08,0xc0,0x6b,0x00,0x00,0x00] 1590x01,0x05,0x08,0xc0,0x6b,0x00,0x00,0x00 160 161# CHECK: s_load_dwordx4 s[20:23], s[2:3], m0 ; encoding: [0x01,0x05,0x08,0xc0,0x7c,0x00,0x00,0x00] 1620x01,0x05,0x08,0xc0,0x7c,0x00,0x00,0x00 163 164# CHECK: s_load_dwordx4 s[20:23], s[2:3], 0x0 ; encoding: [0x01,0x05,0x0a,0xc0,0x00,0x00,0x00,0x00] 1650x01,0x05,0x0a,0xc0,0x00,0x00,0x00,0x00 166 167# CHECK: s_load_dwordx4 s[20:23], s[2:3], s0 offset:0x12345 ; encoding: [0x01,0x45,0x0a,0xc0,0x45,0x23,0x01,0x00] 1680x01,0x45,0x0a,0xc0,0x45,0x23,0x01,0x00 169 170# CHECK: s_load_dwordx4 s[20:23], s[2:3], s0 glc ; encoding: [0x01,0x05,0x09,0xc0,0x00,0x00,0x00,0x00] 1710x01,0x05,0x09,0xc0,0x00,0x00,0x00,0x00 172 173# CHECK: s_load_dwordx8 s[20:27], s[2:3], s0 ; encoding: [0x01,0x05,0x0c,0xc0,0x00,0x00,0x00,0x00] 1740x01,0x05,0x0c,0xc0,0x00,0x00,0x00,0x00 175 176# CHECK: s_load_dwordx8 s[24:31], s[2:3], s0 ; encoding: [0x01,0x06,0x0c,0xc0,0x00,0x00,0x00,0x00] 1770x01,0x06,0x0c,0xc0,0x00,0x00,0x00,0x00 178 179# CHECK: s_load_dwordx8 s[92:99], s[2:3], s0 ; encoding: [0x01,0x17,0x0c,0xc0,0x00,0x00,0x00,0x00] 1800x01,0x17,0x0c,0xc0,0x00,0x00,0x00,0x00 181 182# CHECK: s_load_dwordx8 s[20:27], s[4:5], s0 ; encoding: [0x02,0x05,0x0c,0xc0,0x00,0x00,0x00,0x00] 1830x02,0x05,0x0c,0xc0,0x00,0x00,0x00,0x00 184 185# CHECK: s_load_dwordx8 s[20:27], s[100:101], s0 ; encoding: [0x32,0x05,0x0c,0xc0,0x00,0x00,0x00,0x00] 1860x32,0x05,0x0c,0xc0,0x00,0x00,0x00,0x00 187 188# CHECK: s_load_dwordx8 s[20:27], flat_scratch, s0 ; encoding: [0x33,0x05,0x0c,0xc0,0x00,0x00,0x00,0x00] 1890x33,0x05,0x0c,0xc0,0x00,0x00,0x00,0x00 190 191# CHECK: s_load_dwordx8 s[20:27], vcc, s0 ; encoding: [0x35,0x05,0x0c,0xc0,0x00,0x00,0x00,0x00] 1920x35,0x05,0x0c,0xc0,0x00,0x00,0x00,0x00 193 194# CHECK: s_load_dwordx8 s[20:27], s[2:3], s101 ; encoding: [0x01,0x05,0x0c,0xc0,0x65,0x00,0x00,0x00] 1950x01,0x05,0x0c,0xc0,0x65,0x00,0x00,0x00 196 197# CHECK: s_load_dwordx8 s[20:27], s[2:3], flat_scratch_lo ; encoding: [0x01,0x05,0x0c,0xc0,0x66,0x00,0x00,0x00] 1980x01,0x05,0x0c,0xc0,0x66,0x00,0x00,0x00 199 200# CHECK: s_load_dwordx8 s[20:27], s[2:3], flat_scratch_hi ; encoding: [0x01,0x05,0x0c,0xc0,0x67,0x00,0x00,0x00] 2010x01,0x05,0x0c,0xc0,0x67,0x00,0x00,0x00 202 203# CHECK: s_load_dwordx8 s[20:27], s[2:3], vcc_lo ; encoding: [0x01,0x05,0x0c,0xc0,0x6a,0x00,0x00,0x00] 2040x01,0x05,0x0c,0xc0,0x6a,0x00,0x00,0x00 205 206# CHECK: s_load_dwordx8 s[20:27], s[2:3], vcc_hi ; encoding: [0x01,0x05,0x0c,0xc0,0x6b,0x00,0x00,0x00] 2070x01,0x05,0x0c,0xc0,0x6b,0x00,0x00,0x00 208 209# CHECK: s_load_dwordx8 s[20:27], s[2:3], m0 ; encoding: [0x01,0x05,0x0c,0xc0,0x7c,0x00,0x00,0x00] 2100x01,0x05,0x0c,0xc0,0x7c,0x00,0x00,0x00 211 212# CHECK: s_load_dwordx8 s[20:27], s[2:3], 0x0 ; encoding: [0x01,0x05,0x0e,0xc0,0x00,0x00,0x00,0x00] 2130x01,0x05,0x0e,0xc0,0x00,0x00,0x00,0x00 214 215# CHECK: s_load_dwordx8 s[20:27], s[2:3], s0 offset:0x12345 ; encoding: [0x01,0x45,0x0e,0xc0,0x45,0x23,0x01,0x00] 2160x01,0x45,0x0e,0xc0,0x45,0x23,0x01,0x00 217 218# CHECK: s_load_dwordx8 s[20:27], s[2:3], s0 glc ; encoding: [0x01,0x05,0x0d,0xc0,0x00,0x00,0x00,0x00] 2190x01,0x05,0x0d,0xc0,0x00,0x00,0x00,0x00 220 221# CHECK: s_load_dwordx16 s[20:35], s[2:3], s0 ; encoding: [0x01,0x05,0x10,0xc0,0x00,0x00,0x00,0x00] 2220x01,0x05,0x10,0xc0,0x00,0x00,0x00,0x00 223 224# CHECK: s_load_dwordx16 s[24:39], s[2:3], s0 ; encoding: [0x01,0x06,0x10,0xc0,0x00,0x00,0x00,0x00] 2250x01,0x06,0x10,0xc0,0x00,0x00,0x00,0x00 226 227# CHECK: s_load_dwordx16 s[84:99], s[2:3], s0 ; encoding: [0x01,0x15,0x10,0xc0,0x00,0x00,0x00,0x00] 2280x01,0x15,0x10,0xc0,0x00,0x00,0x00,0x00 229 230# CHECK: s_load_dwordx16 s[20:35], s[4:5], s0 ; encoding: [0x02,0x05,0x10,0xc0,0x00,0x00,0x00,0x00] 2310x02,0x05,0x10,0xc0,0x00,0x00,0x00,0x00 232 233# CHECK: s_load_dwordx16 s[20:35], s[100:101], s0 ; encoding: [0x32,0x05,0x10,0xc0,0x00,0x00,0x00,0x00] 2340x32,0x05,0x10,0xc0,0x00,0x00,0x00,0x00 235 236# CHECK: s_load_dwordx16 s[20:35], flat_scratch, s0 ; encoding: [0x33,0x05,0x10,0xc0,0x00,0x00,0x00,0x00] 2370x33,0x05,0x10,0xc0,0x00,0x00,0x00,0x00 238 239# CHECK: s_load_dwordx16 s[20:35], vcc, s0 ; encoding: [0x35,0x05,0x10,0xc0,0x00,0x00,0x00,0x00] 2400x35,0x05,0x10,0xc0,0x00,0x00,0x00,0x00 241 242# CHECK: s_load_dwordx16 s[20:35], s[2:3], s101 ; encoding: [0x01,0x05,0x10,0xc0,0x65,0x00,0x00,0x00] 2430x01,0x05,0x10,0xc0,0x65,0x00,0x00,0x00 244 245# CHECK: s_load_dwordx16 s[20:35], s[2:3], flat_scratch_lo ; encoding: [0x01,0x05,0x10,0xc0,0x66,0x00,0x00,0x00] 2460x01,0x05,0x10,0xc0,0x66,0x00,0x00,0x00 247 248# CHECK: s_load_dwordx16 s[20:35], s[2:3], flat_scratch_hi ; encoding: [0x01,0x05,0x10,0xc0,0x67,0x00,0x00,0x00] 2490x01,0x05,0x10,0xc0,0x67,0x00,0x00,0x00 250 251# CHECK: s_load_dwordx16 s[20:35], s[2:3], vcc_lo ; encoding: [0x01,0x05,0x10,0xc0,0x6a,0x00,0x00,0x00] 2520x01,0x05,0x10,0xc0,0x6a,0x00,0x00,0x00 253 254# CHECK: s_load_dwordx16 s[20:35], s[2:3], vcc_hi ; encoding: [0x01,0x05,0x10,0xc0,0x6b,0x00,0x00,0x00] 2550x01,0x05,0x10,0xc0,0x6b,0x00,0x00,0x00 256 257# CHECK: s_load_dwordx16 s[20:35], s[2:3], m0 ; encoding: [0x01,0x05,0x10,0xc0,0x7c,0x00,0x00,0x00] 2580x01,0x05,0x10,0xc0,0x7c,0x00,0x00,0x00 259 260# CHECK: s_load_dwordx16 s[20:35], s[2:3], 0x0 ; encoding: [0x01,0x05,0x12,0xc0,0x00,0x00,0x00,0x00] 2610x01,0x05,0x12,0xc0,0x00,0x00,0x00,0x00 262 263# CHECK: s_load_dwordx16 s[20:35], s[2:3], s0 offset:0x12345 ; encoding: [0x01,0x45,0x12,0xc0,0x45,0x23,0x01,0x00] 2640x01,0x45,0x12,0xc0,0x45,0x23,0x01,0x00 265 266# CHECK: s_load_dwordx16 s[20:35], s[2:3], s0 glc ; encoding: [0x01,0x05,0x11,0xc0,0x00,0x00,0x00,0x00] 2670x01,0x05,0x11,0xc0,0x00,0x00,0x00,0x00 268 269# CHECK: s_buffer_load_dword s5, s[4:7], s0 ; encoding: [0x42,0x01,0x20,0xc0,0x00,0x00,0x00,0x00] 2700x42,0x01,0x20,0xc0,0x00,0x00,0x00,0x00 271 272# CHECK: s_buffer_load_dword s101, s[4:7], s0 ; encoding: [0x42,0x19,0x20,0xc0,0x00,0x00,0x00,0x00] 2730x42,0x19,0x20,0xc0,0x00,0x00,0x00,0x00 274 275# CHECK: s_buffer_load_dword flat_scratch_lo, s[4:7], s0 ; encoding: [0x82,0x19,0x20,0xc0,0x00,0x00,0x00,0x00] 2760x82,0x19,0x20,0xc0,0x00,0x00,0x00,0x00 277 278# CHECK: s_buffer_load_dword flat_scratch_hi, s[4:7], s0 ; encoding: [0xc2,0x19,0x20,0xc0,0x00,0x00,0x00,0x00] 2790xc2,0x19,0x20,0xc0,0x00,0x00,0x00,0x00 280 281# CHECK: s_buffer_load_dword vcc_lo, s[4:7], s0 ; encoding: [0x82,0x1a,0x20,0xc0,0x00,0x00,0x00,0x00] 2820x82,0x1a,0x20,0xc0,0x00,0x00,0x00,0x00 283 284# CHECK: s_buffer_load_dword vcc_hi, s[4:7], s0 ; encoding: [0xc2,0x1a,0x20,0xc0,0x00,0x00,0x00,0x00] 2850xc2,0x1a,0x20,0xc0,0x00,0x00,0x00,0x00 286 287# CHECK: s_buffer_load_dword s5, s[8:11], s0 ; encoding: [0x44,0x01,0x20,0xc0,0x00,0x00,0x00,0x00] 2880x44,0x01,0x20,0xc0,0x00,0x00,0x00,0x00 289 290# CHECK: s_buffer_load_dword s5, s[96:99], s0 ; encoding: [0x70,0x01,0x20,0xc0,0x00,0x00,0x00,0x00] 2910x70,0x01,0x20,0xc0,0x00,0x00,0x00,0x00 292 293# CHECK: s_buffer_load_dword s5, s[4:7], s101 ; encoding: [0x42,0x01,0x20,0xc0,0x65,0x00,0x00,0x00] 2940x42,0x01,0x20,0xc0,0x65,0x00,0x00,0x00 295 296# CHECK: s_buffer_load_dword s5, s[4:7], flat_scratch_lo ; encoding: [0x42,0x01,0x20,0xc0,0x66,0x00,0x00,0x00] 2970x42,0x01,0x20,0xc0,0x66,0x00,0x00,0x00 298 299# CHECK: s_buffer_load_dword s5, s[4:7], flat_scratch_hi ; encoding: [0x42,0x01,0x20,0xc0,0x67,0x00,0x00,0x00] 3000x42,0x01,0x20,0xc0,0x67,0x00,0x00,0x00 301 302# CHECK: s_buffer_load_dword s5, s[4:7], vcc_lo ; encoding: [0x42,0x01,0x20,0xc0,0x6a,0x00,0x00,0x00] 3030x42,0x01,0x20,0xc0,0x6a,0x00,0x00,0x00 304 305# CHECK: s_buffer_load_dword s5, s[4:7], vcc_hi ; encoding: [0x42,0x01,0x20,0xc0,0x6b,0x00,0x00,0x00] 3060x42,0x01,0x20,0xc0,0x6b,0x00,0x00,0x00 307 308# CHECK: s_buffer_load_dword s5, s[4:7], m0 ; encoding: [0x42,0x01,0x20,0xc0,0x7c,0x00,0x00,0x00] 3090x42,0x01,0x20,0xc0,0x7c,0x00,0x00,0x00 310 311# CHECK: s_buffer_load_dword s5, s[4:7], 0x0 ; encoding: [0x42,0x01,0x22,0xc0,0x00,0x00,0x00,0x00] 3120x42,0x01,0x22,0xc0,0x00,0x00,0x00,0x00 313 314# CHECK: s_buffer_load_dword s5, s[4:7], s0 offset:0x12345 ; encoding: [0x42,0x41,0x22,0xc0,0x45,0x23,0x01,0x00] 3150x42,0x41,0x22,0xc0,0x45,0x23,0x01,0x00 316 317# CHECK: s_buffer_load_dword s5, s[4:7], s0 glc ; encoding: [0x42,0x01,0x21,0xc0,0x00,0x00,0x00,0x00] 3180x42,0x01,0x21,0xc0,0x00,0x00,0x00,0x00 319 320# CHECK: s_buffer_load_dwordx2 s[10:11], s[4:7], s0 ; encoding: [0x82,0x02,0x24,0xc0,0x00,0x00,0x00,0x00] 3210x82,0x02,0x24,0xc0,0x00,0x00,0x00,0x00 322 323# CHECK: s_buffer_load_dwordx2 s[12:13], s[4:7], s0 ; encoding: [0x02,0x03,0x24,0xc0,0x00,0x00,0x00,0x00] 3240x02,0x03,0x24,0xc0,0x00,0x00,0x00,0x00 325 326# CHECK: s_buffer_load_dwordx2 s[100:101], s[4:7], s0 ; encoding: [0x02,0x19,0x24,0xc0,0x00,0x00,0x00,0x00] 3270x02,0x19,0x24,0xc0,0x00,0x00,0x00,0x00 328 329# CHECK: s_buffer_load_dwordx2 flat_scratch, s[4:7], s0 ; encoding: [0x82,0x19,0x24,0xc0,0x00,0x00,0x00,0x00] 3300x82,0x19,0x24,0xc0,0x00,0x00,0x00,0x00 331 332# CHECK: s_buffer_load_dwordx2 vcc, s[4:7], s0 ; encoding: [0x82,0x1a,0x24,0xc0,0x00,0x00,0x00,0x00] 3330x82,0x1a,0x24,0xc0,0x00,0x00,0x00,0x00 334 335# CHECK: s_buffer_load_dwordx2 s[10:11], s[8:11], s0 ; encoding: [0x84,0x02,0x24,0xc0,0x00,0x00,0x00,0x00] 3360x84,0x02,0x24,0xc0,0x00,0x00,0x00,0x00 337 338# CHECK: s_buffer_load_dwordx2 s[10:11], s[96:99], s0 ; encoding: [0xb0,0x02,0x24,0xc0,0x00,0x00,0x00,0x00] 3390xb0,0x02,0x24,0xc0,0x00,0x00,0x00,0x00 340 341# CHECK: s_buffer_load_dwordx2 s[10:11], s[4:7], s101 ; encoding: [0x82,0x02,0x24,0xc0,0x65,0x00,0x00,0x00] 3420x82,0x02,0x24,0xc0,0x65,0x00,0x00,0x00 343 344# CHECK: s_buffer_load_dwordx2 s[10:11], s[4:7], flat_scratch_lo ; encoding: [0x82,0x02,0x24,0xc0,0x66,0x00,0x00,0x00] 3450x82,0x02,0x24,0xc0,0x66,0x00,0x00,0x00 346 347# CHECK: s_buffer_load_dwordx2 s[10:11], s[4:7], flat_scratch_hi ; encoding: [0x82,0x02,0x24,0xc0,0x67,0x00,0x00,0x00] 3480x82,0x02,0x24,0xc0,0x67,0x00,0x00,0x00 349 350# CHECK: s_buffer_load_dwordx2 s[10:11], s[4:7], vcc_lo ; encoding: [0x82,0x02,0x24,0xc0,0x6a,0x00,0x00,0x00] 3510x82,0x02,0x24,0xc0,0x6a,0x00,0x00,0x00 352 353# CHECK: s_buffer_load_dwordx2 s[10:11], s[4:7], vcc_hi ; encoding: [0x82,0x02,0x24,0xc0,0x6b,0x00,0x00,0x00] 3540x82,0x02,0x24,0xc0,0x6b,0x00,0x00,0x00 355 356# CHECK: s_buffer_load_dwordx2 s[10:11], s[4:7], m0 ; encoding: [0x82,0x02,0x24,0xc0,0x7c,0x00,0x00,0x00] 3570x82,0x02,0x24,0xc0,0x7c,0x00,0x00,0x00 358 359# CHECK: s_buffer_load_dwordx2 s[10:11], s[4:7], 0x0 ; encoding: [0x82,0x02,0x26,0xc0,0x00,0x00,0x00,0x00] 3600x82,0x02,0x26,0xc0,0x00,0x00,0x00,0x00 361 362# CHECK: s_buffer_load_dwordx2 s[10:11], s[4:7], s0 offset:0x12345 ; encoding: [0x82,0x42,0x26,0xc0,0x45,0x23,0x01,0x00] 3630x82,0x42,0x26,0xc0,0x45,0x23,0x01,0x00 364 365# CHECK: s_buffer_load_dwordx2 s[10:11], s[4:7], s0 glc ; encoding: [0x82,0x02,0x25,0xc0,0x00,0x00,0x00,0x00] 3660x82,0x02,0x25,0xc0,0x00,0x00,0x00,0x00 367 368# CHECK: s_buffer_load_dwordx4 s[20:23], s[4:7], s0 ; encoding: [0x02,0x05,0x28,0xc0,0x00,0x00,0x00,0x00] 3690x02,0x05,0x28,0xc0,0x00,0x00,0x00,0x00 370 371# CHECK: s_buffer_load_dwordx4 s[24:27], s[4:7], s0 ; encoding: [0x02,0x06,0x28,0xc0,0x00,0x00,0x00,0x00] 3720x02,0x06,0x28,0xc0,0x00,0x00,0x00,0x00 373 374# CHECK: s_buffer_load_dwordx4 s[96:99], s[4:7], s0 ; encoding: [0x02,0x18,0x28,0xc0,0x00,0x00,0x00,0x00] 3750x02,0x18,0x28,0xc0,0x00,0x00,0x00,0x00 376 377# CHECK: s_buffer_load_dwordx4 s[20:23], s[8:11], s0 ; encoding: [0x04,0x05,0x28,0xc0,0x00,0x00,0x00,0x00] 3780x04,0x05,0x28,0xc0,0x00,0x00,0x00,0x00 379 380# CHECK: s_buffer_load_dwordx4 s[20:23], s[96:99], s0 ; encoding: [0x30,0x05,0x28,0xc0,0x00,0x00,0x00,0x00] 3810x30,0x05,0x28,0xc0,0x00,0x00,0x00,0x00 382 383# CHECK: s_buffer_load_dwordx4 s[20:23], s[4:7], s101 ; encoding: [0x02,0x05,0x28,0xc0,0x65,0x00,0x00,0x00] 3840x02,0x05,0x28,0xc0,0x65,0x00,0x00,0x00 385 386# CHECK: s_buffer_load_dwordx4 s[20:23], s[4:7], flat_scratch_lo ; encoding: [0x02,0x05,0x28,0xc0,0x66,0x00,0x00,0x00] 3870x02,0x05,0x28,0xc0,0x66,0x00,0x00,0x00 388 389# CHECK: s_buffer_load_dwordx4 s[20:23], s[4:7], flat_scratch_hi ; encoding: [0x02,0x05,0x28,0xc0,0x67,0x00,0x00,0x00] 3900x02,0x05,0x28,0xc0,0x67,0x00,0x00,0x00 391 392# CHECK: s_buffer_load_dwordx4 s[20:23], s[4:7], vcc_lo ; encoding: [0x02,0x05,0x28,0xc0,0x6a,0x00,0x00,0x00] 3930x02,0x05,0x28,0xc0,0x6a,0x00,0x00,0x00 394 395# CHECK: s_buffer_load_dwordx4 s[20:23], s[4:7], vcc_hi ; encoding: [0x02,0x05,0x28,0xc0,0x6b,0x00,0x00,0x00] 3960x02,0x05,0x28,0xc0,0x6b,0x00,0x00,0x00 397 398# CHECK: s_buffer_load_dwordx4 s[20:23], s[4:7], m0 ; encoding: [0x02,0x05,0x28,0xc0,0x7c,0x00,0x00,0x00] 3990x02,0x05,0x28,0xc0,0x7c,0x00,0x00,0x00 400 401# CHECK: s_buffer_load_dwordx4 s[20:23], s[4:7], 0x0 ; encoding: [0x02,0x05,0x2a,0xc0,0x00,0x00,0x00,0x00] 4020x02,0x05,0x2a,0xc0,0x00,0x00,0x00,0x00 403 404# CHECK: s_buffer_load_dwordx4 s[20:23], s[4:7], s0 offset:0x12345 ; encoding: [0x02,0x45,0x2a,0xc0,0x45,0x23,0x01,0x00] 4050x02,0x45,0x2a,0xc0,0x45,0x23,0x01,0x00 406 407# CHECK: s_buffer_load_dwordx4 s[20:23], s[4:7], s0 glc ; encoding: [0x02,0x05,0x29,0xc0,0x00,0x00,0x00,0x00] 4080x02,0x05,0x29,0xc0,0x00,0x00,0x00,0x00 409 410# CHECK: s_buffer_load_dwordx8 s[20:27], s[4:7], s0 ; encoding: [0x02,0x05,0x2c,0xc0,0x00,0x00,0x00,0x00] 4110x02,0x05,0x2c,0xc0,0x00,0x00,0x00,0x00 412 413# CHECK: s_buffer_load_dwordx8 s[24:31], s[4:7], s0 ; encoding: [0x02,0x06,0x2c,0xc0,0x00,0x00,0x00,0x00] 4140x02,0x06,0x2c,0xc0,0x00,0x00,0x00,0x00 415 416# CHECK: s_buffer_load_dwordx8 s[92:99], s[4:7], s0 ; encoding: [0x02,0x17,0x2c,0xc0,0x00,0x00,0x00,0x00] 4170x02,0x17,0x2c,0xc0,0x00,0x00,0x00,0x00 418 419# CHECK: s_buffer_load_dwordx8 s[20:27], s[8:11], s0 ; encoding: [0x04,0x05,0x2c,0xc0,0x00,0x00,0x00,0x00] 4200x04,0x05,0x2c,0xc0,0x00,0x00,0x00,0x00 421 422# CHECK: s_buffer_load_dwordx8 s[20:27], s[96:99], s0 ; encoding: [0x30,0x05,0x2c,0xc0,0x00,0x00,0x00,0x00] 4230x30,0x05,0x2c,0xc0,0x00,0x00,0x00,0x00 424 425# CHECK: s_buffer_load_dwordx8 s[20:27], s[4:7], s101 ; encoding: [0x02,0x05,0x2c,0xc0,0x65,0x00,0x00,0x00] 4260x02,0x05,0x2c,0xc0,0x65,0x00,0x00,0x00 427 428# CHECK: s_buffer_load_dwordx8 s[20:27], s[4:7], flat_scratch_lo ; encoding: [0x02,0x05,0x2c,0xc0,0x66,0x00,0x00,0x00] 4290x02,0x05,0x2c,0xc0,0x66,0x00,0x00,0x00 430 431# CHECK: s_buffer_load_dwordx8 s[20:27], s[4:7], flat_scratch_hi ; encoding: [0x02,0x05,0x2c,0xc0,0x67,0x00,0x00,0x00] 4320x02,0x05,0x2c,0xc0,0x67,0x00,0x00,0x00 433 434# CHECK: s_buffer_load_dwordx8 s[20:27], s[4:7], vcc_lo ; encoding: [0x02,0x05,0x2c,0xc0,0x6a,0x00,0x00,0x00] 4350x02,0x05,0x2c,0xc0,0x6a,0x00,0x00,0x00 436 437# CHECK: s_buffer_load_dwordx8 s[20:27], s[4:7], vcc_hi ; encoding: [0x02,0x05,0x2c,0xc0,0x6b,0x00,0x00,0x00] 4380x02,0x05,0x2c,0xc0,0x6b,0x00,0x00,0x00 439 440# CHECK: s_buffer_load_dwordx8 s[20:27], s[4:7], m0 ; encoding: [0x02,0x05,0x2c,0xc0,0x7c,0x00,0x00,0x00] 4410x02,0x05,0x2c,0xc0,0x7c,0x00,0x00,0x00 442 443# CHECK: s_buffer_load_dwordx8 s[20:27], s[4:7], 0x0 ; encoding: [0x02,0x05,0x2e,0xc0,0x00,0x00,0x00,0x00] 4440x02,0x05,0x2e,0xc0,0x00,0x00,0x00,0x00 445 446# CHECK: s_buffer_load_dwordx8 s[20:27], s[4:7], s0 offset:0x12345 ; encoding: [0x02,0x45,0x2e,0xc0,0x45,0x23,0x01,0x00] 4470x02,0x45,0x2e,0xc0,0x45,0x23,0x01,0x00 448 449# CHECK: s_buffer_load_dwordx8 s[20:27], s[4:7], s0 glc ; encoding: [0x02,0x05,0x2d,0xc0,0x00,0x00,0x00,0x00] 4500x02,0x05,0x2d,0xc0,0x00,0x00,0x00,0x00 451 452# CHECK: s_buffer_load_dwordx16 s[20:35], s[4:7], s0 ; encoding: [0x02,0x05,0x30,0xc0,0x00,0x00,0x00,0x00] 4530x02,0x05,0x30,0xc0,0x00,0x00,0x00,0x00 454 455# CHECK: s_buffer_load_dwordx16 s[24:39], s[4:7], s0 ; encoding: [0x02,0x06,0x30,0xc0,0x00,0x00,0x00,0x00] 4560x02,0x06,0x30,0xc0,0x00,0x00,0x00,0x00 457 458# CHECK: s_buffer_load_dwordx16 s[84:99], s[4:7], s0 ; encoding: [0x02,0x15,0x30,0xc0,0x00,0x00,0x00,0x00] 4590x02,0x15,0x30,0xc0,0x00,0x00,0x00,0x00 460 461# CHECK: s_buffer_load_dwordx16 s[20:35], s[8:11], s0 ; encoding: [0x04,0x05,0x30,0xc0,0x00,0x00,0x00,0x00] 4620x04,0x05,0x30,0xc0,0x00,0x00,0x00,0x00 463 464# CHECK: s_buffer_load_dwordx16 s[20:35], s[96:99], s0 ; encoding: [0x30,0x05,0x30,0xc0,0x00,0x00,0x00,0x00] 4650x30,0x05,0x30,0xc0,0x00,0x00,0x00,0x00 466 467# CHECK: s_buffer_load_dwordx16 s[20:35], s[4:7], s101 ; encoding: [0x02,0x05,0x30,0xc0,0x65,0x00,0x00,0x00] 4680x02,0x05,0x30,0xc0,0x65,0x00,0x00,0x00 469 470# CHECK: s_buffer_load_dwordx16 s[20:35], s[4:7], flat_scratch_lo ; encoding: [0x02,0x05,0x30,0xc0,0x66,0x00,0x00,0x00] 4710x02,0x05,0x30,0xc0,0x66,0x00,0x00,0x00 472 473# CHECK: s_buffer_load_dwordx16 s[20:35], s[4:7], flat_scratch_hi ; encoding: [0x02,0x05,0x30,0xc0,0x67,0x00,0x00,0x00] 4740x02,0x05,0x30,0xc0,0x67,0x00,0x00,0x00 475 476# CHECK: s_buffer_load_dwordx16 s[20:35], s[4:7], vcc_lo ; encoding: [0x02,0x05,0x30,0xc0,0x6a,0x00,0x00,0x00] 4770x02,0x05,0x30,0xc0,0x6a,0x00,0x00,0x00 478 479# CHECK: s_buffer_load_dwordx16 s[20:35], s[4:7], vcc_hi ; encoding: [0x02,0x05,0x30,0xc0,0x6b,0x00,0x00,0x00] 4800x02,0x05,0x30,0xc0,0x6b,0x00,0x00,0x00 481 482# CHECK: s_buffer_load_dwordx16 s[20:35], s[4:7], m0 ; encoding: [0x02,0x05,0x30,0xc0,0x7c,0x00,0x00,0x00] 4830x02,0x05,0x30,0xc0,0x7c,0x00,0x00,0x00 484 485# CHECK: s_buffer_load_dwordx16 s[20:35], s[4:7], 0x0 ; encoding: [0x02,0x05,0x32,0xc0,0x00,0x00,0x00,0x00] 4860x02,0x05,0x32,0xc0,0x00,0x00,0x00,0x00 487 488# CHECK: s_buffer_load_dwordx16 s[20:35], s[4:7], s0 offset:0x12345 ; encoding: [0x02,0x45,0x32,0xc0,0x45,0x23,0x01,0x00] 4890x02,0x45,0x32,0xc0,0x45,0x23,0x01,0x00 490 491# CHECK: s_buffer_load_dwordx16 s[20:35], s[4:7], s0 glc ; encoding: [0x02,0x05,0x31,0xc0,0x00,0x00,0x00,0x00] 4920x02,0x05,0x31,0xc0,0x00,0x00,0x00,0x00 493 494# CHECK: s_store_dword s1, s[4:5], s0 ; encoding: [0x42,0x00,0x40,0xc0,0x00,0x00,0x00,0x00] 4950x42,0x00,0x40,0xc0,0x00,0x00,0x00,0x00 496 497# CHECK: s_store_dword s101, s[4:5], s0 ; encoding: [0x42,0x19,0x40,0xc0,0x00,0x00,0x00,0x00] 4980x42,0x19,0x40,0xc0,0x00,0x00,0x00,0x00 499 500# CHECK: s_store_dword flat_scratch_lo, s[4:5], s0 ; encoding: [0x82,0x19,0x40,0xc0,0x00,0x00,0x00,0x00] 5010x82,0x19,0x40,0xc0,0x00,0x00,0x00,0x00 502 503# CHECK: s_store_dword flat_scratch_hi, s[4:5], s0 ; encoding: [0xc2,0x19,0x40,0xc0,0x00,0x00,0x00,0x00] 5040xc2,0x19,0x40,0xc0,0x00,0x00,0x00,0x00 505 506# CHECK: s_store_dword vcc_lo, s[4:5], s0 ; encoding: [0x82,0x1a,0x40,0xc0,0x00,0x00,0x00,0x00] 5070x82,0x1a,0x40,0xc0,0x00,0x00,0x00,0x00 508 509# CHECK: s_store_dword vcc_hi, s[4:5], s0 ; encoding: [0xc2,0x1a,0x40,0xc0,0x00,0x00,0x00,0x00] 5100xc2,0x1a,0x40,0xc0,0x00,0x00,0x00,0x00 511 512# CHECK: s_store_dword s1, s[6:7], s0 ; encoding: [0x43,0x00,0x40,0xc0,0x00,0x00,0x00,0x00] 5130x43,0x00,0x40,0xc0,0x00,0x00,0x00,0x00 514 515# CHECK: s_store_dword s1, s[100:101], s0 ; encoding: [0x72,0x00,0x40,0xc0,0x00,0x00,0x00,0x00] 5160x72,0x00,0x40,0xc0,0x00,0x00,0x00,0x00 517 518# CHECK: s_store_dword s1, flat_scratch, s0 ; encoding: [0x73,0x00,0x40,0xc0,0x00,0x00,0x00,0x00] 5190x73,0x00,0x40,0xc0,0x00,0x00,0x00,0x00 520 521# CHECK: s_store_dword s1, vcc, s0 ; encoding: [0x75,0x00,0x40,0xc0,0x00,0x00,0x00,0x00] 5220x75,0x00,0x40,0xc0,0x00,0x00,0x00,0x00 523 524# CHECK: s_store_dword s1, s[4:5], s101 ; encoding: [0x42,0x00,0x40,0xc0,0x65,0x00,0x00,0x00] 5250x42,0x00,0x40,0xc0,0x65,0x00,0x00,0x00 526 527# The SGRP variants can alternatively be encoded with imm=0, soffset_en=1 528# and the offset register encoded in the soffset field with the offset 529# field being disregarded. 530# CHECK: s_store_dword s5, s[2:3], s64 ; encoding: [0x41,0x41,0x40,0xc0,0x00,0x00,0x00,0x80] 5310x41,0x41,0x40,0xc0,0x65,0x00,0x00,0x80 532 533# CHECK: s_store_dword s1, s[4:5], flat_scratch_lo ; encoding: [0x42,0x00,0x40,0xc0,0x66,0x00,0x00,0x00] 5340x42,0x00,0x40,0xc0,0x66,0x00,0x00,0x00 535 536# CHECK: s_store_dword s1, s[4:5], flat_scratch_hi ; encoding: [0x42,0x00,0x40,0xc0,0x67,0x00,0x00,0x00] 5370x42,0x00,0x40,0xc0,0x67,0x00,0x00,0x00 538 539# CHECK: s_store_dword s1, s[4:5], vcc_lo ; encoding: [0x42,0x00,0x40,0xc0,0x6a,0x00,0x00,0x00] 5400x42,0x00,0x40,0xc0,0x6a,0x00,0x00,0x00 541 542# CHECK: s_store_dword s1, s[4:5], vcc_hi ; encoding: [0x42,0x00,0x40,0xc0,0x6b,0x00,0x00,0x00] 5430x42,0x00,0x40,0xc0,0x6b,0x00,0x00,0x00 544 545# CHECK: s_store_dword s1, s[4:5], m0 ; encoding: [0x42,0x00,0x40,0xc0,0x7c,0x00,0x00,0x00] 5460x42,0x00,0x40,0xc0,0x7c,0x00,0x00,0x00 547 548# CHECK: s_store_dword s1, s[4:5], 0x0 ; encoding: [0x42,0x00,0x42,0xc0,0x00,0x00,0x00,0x00] 5490x42,0x00,0x42,0xc0,0x00,0x00,0x00,0x00 550 551# CHECK: s_store_dword s1, s[4:5], s7 offset:0x12345 ; encoding: [0x42,0x40,0x42,0xc0,0x45,0x23,0x01,0x0e] 5520x42,0x40,0x42,0xc0,0x45,0x23,0x01,0x0e 553 554# SP3 prefers to decode instructions with imm=1 and soffset_en=1 to the 555# form with the 'offset:' modifier, even if the offset is 0. 556# CHECK: s_store_dword s5, s[2:3], s0 offset:0x0 ; encoding: [0x41,0x41,0x42,0xc0,0x00,0x00,0x00,0x00] 5570x41,0x41,0x42,0xc0,0x00,0x00,0x00,0x00 558 559# CHECK: s_store_dword s1, s[4:5], s0 glc ; encoding: [0x42,0x00,0x41,0xc0,0x00,0x00,0x00,0x00] 5600x42,0x00,0x41,0xc0,0x00,0x00,0x00,0x00 561 562# CHECK: s_store_dwordx2 s[2:3], s[4:5], s0 ; encoding: [0x82,0x00,0x44,0xc0,0x00,0x00,0x00,0x00] 5630x82,0x00,0x44,0xc0,0x00,0x00,0x00,0x00 564 565# CHECK: s_store_dwordx2 s[4:5], s[4:5], s0 ; encoding: [0x02,0x01,0x44,0xc0,0x00,0x00,0x00,0x00] 5660x02,0x01,0x44,0xc0,0x00,0x00,0x00,0x00 567 568# CHECK: s_store_dwordx2 s[100:101], s[4:5], s0 ; encoding: [0x02,0x19,0x44,0xc0,0x00,0x00,0x00,0x00] 5690x02,0x19,0x44,0xc0,0x00,0x00,0x00,0x00 570 571# CHECK: s_store_dwordx2 flat_scratch, s[4:5], s0 ; encoding: [0x82,0x19,0x44,0xc0,0x00,0x00,0x00,0x00] 5720x82,0x19,0x44,0xc0,0x00,0x00,0x00,0x00 573 574# CHECK: s_store_dwordx2 vcc, s[4:5], s0 ; encoding: [0x82,0x1a,0x44,0xc0,0x00,0x00,0x00,0x00] 5750x82,0x1a,0x44,0xc0,0x00,0x00,0x00,0x00 576 577# CHECK: s_store_dwordx2 s[2:3], s[6:7], s0 ; encoding: [0x83,0x00,0x44,0xc0,0x00,0x00,0x00,0x00] 5780x83,0x00,0x44,0xc0,0x00,0x00,0x00,0x00 579 580# CHECK: s_store_dwordx2 s[2:3], s[100:101], s0 ; encoding: [0xb2,0x00,0x44,0xc0,0x00,0x00,0x00,0x00] 5810xb2,0x00,0x44,0xc0,0x00,0x00,0x00,0x00 582 583# CHECK: s_store_dwordx2 s[2:3], flat_scratch, s0 ; encoding: [0xb3,0x00,0x44,0xc0,0x00,0x00,0x00,0x00] 5840xb3,0x00,0x44,0xc0,0x00,0x00,0x00,0x00 585 586# CHECK: s_store_dwordx2 s[2:3], vcc, s0 ; encoding: [0xb5,0x00,0x44,0xc0,0x00,0x00,0x00,0x00] 5870xb5,0x00,0x44,0xc0,0x00,0x00,0x00,0x00 588 589# CHECK: s_store_dwordx2 s[2:3], s[4:5], s101 ; encoding: [0x82,0x00,0x44,0xc0,0x65,0x00,0x00,0x00] 5900x82,0x00,0x44,0xc0,0x65,0x00,0x00,0x00 591 592# CHECK: s_store_dwordx2 s[2:3], s[4:5], flat_scratch_lo ; encoding: [0x82,0x00,0x44,0xc0,0x66,0x00,0x00,0x00] 5930x82,0x00,0x44,0xc0,0x66,0x00,0x00,0x00 594 595# CHECK: s_store_dwordx2 s[2:3], s[4:5], flat_scratch_hi ; encoding: [0x82,0x00,0x44,0xc0,0x67,0x00,0x00,0x00] 5960x82,0x00,0x44,0xc0,0x67,0x00,0x00,0x00 597 598# CHECK: s_store_dwordx2 s[2:3], s[4:5], vcc_lo ; encoding: [0x82,0x00,0x44,0xc0,0x6a,0x00,0x00,0x00] 5990x82,0x00,0x44,0xc0,0x6a,0x00,0x00,0x00 600 601# CHECK: s_store_dwordx2 s[2:3], s[4:5], vcc_hi ; encoding: [0x82,0x00,0x44,0xc0,0x6b,0x00,0x00,0x00] 6020x82,0x00,0x44,0xc0,0x6b,0x00,0x00,0x00 603 604# CHECK: s_store_dwordx2 s[2:3], s[4:5], m0 ; encoding: [0x82,0x00,0x44,0xc0,0x7c,0x00,0x00,0x00] 6050x82,0x00,0x44,0xc0,0x7c,0x00,0x00,0x00 606 607# CHECK: s_store_dwordx2 s[2:3], s[4:5], 0x0 ; encoding: [0x82,0x00,0x46,0xc0,0x00,0x00,0x00,0x00] 6080x82,0x00,0x46,0xc0,0x00,0x00,0x00,0x00 609 610# CHECK: s_store_dwordx2 s[2:3], s[4:5], s0 glc ; encoding: [0x82,0x00,0x45,0xc0,0x00,0x00,0x00,0x00] 6110x82,0x00,0x45,0xc0,0x00,0x00,0x00,0x00 612 613# CHECK: s_store_dwordx4 s[4:7], s[4:5], s0 ; encoding: [0x02,0x01,0x48,0xc0,0x00,0x00,0x00,0x00] 6140x02,0x01,0x48,0xc0,0x00,0x00,0x00,0x00 615 616# CHECK: s_store_dwordx4 s[8:11], s[4:5], s0 ; encoding: [0x02,0x02,0x48,0xc0,0x00,0x00,0x00,0x00] 6170x02,0x02,0x48,0xc0,0x00,0x00,0x00,0x00 618 619# CHECK: s_store_dwordx4 s[96:99], s[4:5], s0 ; encoding: [0x02,0x18,0x48,0xc0,0x00,0x00,0x00,0x00] 6200x02,0x18,0x48,0xc0,0x00,0x00,0x00,0x00 621 622# CHECK: s_store_dwordx4 s[4:7], s[6:7], s0 ; encoding: [0x03,0x01,0x48,0xc0,0x00,0x00,0x00,0x00] 6230x03,0x01,0x48,0xc0,0x00,0x00,0x00,0x00 624 625# CHECK: s_store_dwordx4 s[4:7], s[100:101], s0 ; encoding: [0x32,0x01,0x48,0xc0,0x00,0x00,0x00,0x00] 6260x32,0x01,0x48,0xc0,0x00,0x00,0x00,0x00 627 628# CHECK: s_store_dwordx4 s[4:7], flat_scratch, s0 ; encoding: [0x33,0x01,0x48,0xc0,0x00,0x00,0x00,0x00] 6290x33,0x01,0x48,0xc0,0x00,0x00,0x00,0x00 630 631# CHECK: s_store_dwordx4 s[4:7], vcc, s0 ; encoding: [0x35,0x01,0x48,0xc0,0x00,0x00,0x00,0x00] 6320x35,0x01,0x48,0xc0,0x00,0x00,0x00,0x00 633 634# CHECK: s_store_dwordx4 s[4:7], s[4:5], s101 ; encoding: [0x02,0x01,0x48,0xc0,0x65,0x00,0x00,0x00] 6350x02,0x01,0x48,0xc0,0x65,0x00,0x00,0x00 636 637# CHECK: s_store_dwordx4 s[4:7], s[4:5], flat_scratch_lo ; encoding: [0x02,0x01,0x48,0xc0,0x66,0x00,0x00,0x00] 6380x02,0x01,0x48,0xc0,0x66,0x00,0x00,0x00 639 640# CHECK: s_store_dwordx4 s[4:7], s[4:5], flat_scratch_hi ; encoding: [0x02,0x01,0x48,0xc0,0x67,0x00,0x00,0x00] 6410x02,0x01,0x48,0xc0,0x67,0x00,0x00,0x00 642 643# CHECK: s_store_dwordx4 s[4:7], s[4:5], vcc_lo ; encoding: [0x02,0x01,0x48,0xc0,0x6a,0x00,0x00,0x00] 6440x02,0x01,0x48,0xc0,0x6a,0x00,0x00,0x00 645 646# CHECK: s_store_dwordx4 s[4:7], s[4:5], vcc_hi ; encoding: [0x02,0x01,0x48,0xc0,0x6b,0x00,0x00,0x00] 6470x02,0x01,0x48,0xc0,0x6b,0x00,0x00,0x00 648 649# CHECK: s_store_dwordx4 s[4:7], s[4:5], m0 ; encoding: [0x02,0x01,0x48,0xc0,0x7c,0x00,0x00,0x00] 6500x02,0x01,0x48,0xc0,0x7c,0x00,0x00,0x00 651 652# CHECK: s_store_dwordx4 s[4:7], s[4:5], 0x0 ; encoding: [0x02,0x01,0x4a,0xc0,0x00,0x00,0x00,0x00] 6530x02,0x01,0x4a,0xc0,0x00,0x00,0x00,0x00 654 655# CHECK: s_store_dwordx4 s[4:7], s[4:5], s0 glc ; encoding: [0x02,0x01,0x49,0xc0,0x00,0x00,0x00,0x00] 6560x02,0x01,0x49,0xc0,0x00,0x00,0x00,0x00 657 658# CHECK: s_buffer_store_dword s1, s[8:11], s0 ; encoding: [0x44,0x00,0x60,0xc0,0x00,0x00,0x00,0x00] 6590x44,0x00,0x60,0xc0,0x00,0x00,0x00,0x00 660 661# CHECK: s_buffer_store_dword s101, s[8:11], s0 ; encoding: [0x44,0x19,0x60,0xc0,0x00,0x00,0x00,0x00] 6620x44,0x19,0x60,0xc0,0x00,0x00,0x00,0x00 663 664# CHECK: s_buffer_store_dword flat_scratch_lo, s[8:11], s0 ; encoding: [0x84,0x19,0x60,0xc0,0x00,0x00,0x00,0x00] 6650x84,0x19,0x60,0xc0,0x00,0x00,0x00,0x00 666 667# CHECK: s_buffer_store_dword flat_scratch_hi, s[8:11], s0 ; encoding: [0xc4,0x19,0x60,0xc0,0x00,0x00,0x00,0x00] 6680xc4,0x19,0x60,0xc0,0x00,0x00,0x00,0x00 669 670# CHECK: s_buffer_store_dword vcc_lo, s[8:11], s0 ; encoding: [0x84,0x1a,0x60,0xc0,0x00,0x00,0x00,0x00] 6710x84,0x1a,0x60,0xc0,0x00,0x00,0x00,0x00 672 673# CHECK: s_buffer_store_dword vcc_hi, s[8:11], s0 ; encoding: [0xc4,0x1a,0x60,0xc0,0x00,0x00,0x00,0x00] 6740xc4,0x1a,0x60,0xc0,0x00,0x00,0x00,0x00 675 676# CHECK: s_buffer_store_dword s1, s[12:15], s0 ; encoding: [0x46,0x00,0x60,0xc0,0x00,0x00,0x00,0x00] 6770x46,0x00,0x60,0xc0,0x00,0x00,0x00,0x00 678 679# CHECK: s_buffer_store_dword s1, s[96:99], s0 ; encoding: [0x70,0x00,0x60,0xc0,0x00,0x00,0x00,0x00] 6800x70,0x00,0x60,0xc0,0x00,0x00,0x00,0x00 681 682# CHECK: s_buffer_store_dword s1, s[8:11], s101 ; encoding: [0x44,0x00,0x60,0xc0,0x65,0x00,0x00,0x00] 6830x44,0x00,0x60,0xc0,0x65,0x00,0x00,0x00 684 685# CHECK: s_buffer_store_dword s1, s[8:11], flat_scratch_lo ; encoding: [0x44,0x00,0x60,0xc0,0x66,0x00,0x00,0x00] 6860x44,0x00,0x60,0xc0,0x66,0x00,0x00,0x00 687 688# CHECK: s_buffer_store_dword s1, s[8:11], flat_scratch_hi ; encoding: [0x44,0x00,0x60,0xc0,0x67,0x00,0x00,0x00] 6890x44,0x00,0x60,0xc0,0x67,0x00,0x00,0x00 690 691# CHECK: s_buffer_store_dword s1, s[8:11], vcc_lo ; encoding: [0x44,0x00,0x60,0xc0,0x6a,0x00,0x00,0x00] 6920x44,0x00,0x60,0xc0,0x6a,0x00,0x00,0x00 693 694# CHECK: s_buffer_store_dword s1, s[8:11], vcc_hi ; encoding: [0x44,0x00,0x60,0xc0,0x6b,0x00,0x00,0x00] 6950x44,0x00,0x60,0xc0,0x6b,0x00,0x00,0x00 696 697# CHECK: s_buffer_store_dword s1, s[8:11], m0 ; encoding: [0x44,0x00,0x60,0xc0,0x7c,0x00,0x00,0x00] 6980x44,0x00,0x60,0xc0,0x7c,0x00,0x00,0x00 699 700# CHECK: s_buffer_store_dword s1, s[8:11], 0x0 ; encoding: [0x44,0x00,0x62,0xc0,0x00,0x00,0x00,0x00] 7010x44,0x00,0x62,0xc0,0x00,0x00,0x00,0x00 702 703# CHECK: s_buffer_store_dword s1, s[8:11], s0 glc ; encoding: [0x44,0x00,0x61,0xc0,0x00,0x00,0x00,0x00] 7040x44,0x00,0x61,0xc0,0x00,0x00,0x00,0x00 705 706# CHECK: s_buffer_store_dwordx2 s[2:3], s[8:11], s0 ; encoding: [0x84,0x00,0x64,0xc0,0x00,0x00,0x00,0x00] 7070x84,0x00,0x64,0xc0,0x00,0x00,0x00,0x00 708 709# CHECK: s_buffer_store_dwordx2 s[4:5], s[8:11], s0 ; encoding: [0x04,0x01,0x64,0xc0,0x00,0x00,0x00,0x00] 7100x04,0x01,0x64,0xc0,0x00,0x00,0x00,0x00 711 712# CHECK: s_buffer_store_dwordx2 s[100:101], s[8:11], s0 ; encoding: [0x04,0x19,0x64,0xc0,0x00,0x00,0x00,0x00] 7130x04,0x19,0x64,0xc0,0x00,0x00,0x00,0x00 714 715# CHECK: s_buffer_store_dwordx2 flat_scratch, s[8:11], s0 ; encoding: [0x84,0x19,0x64,0xc0,0x00,0x00,0x00,0x00] 7160x84,0x19,0x64,0xc0,0x00,0x00,0x00,0x00 717 718# CHECK: s_buffer_store_dwordx2 vcc, s[8:11], s0 ; encoding: [0x84,0x1a,0x64,0xc0,0x00,0x00,0x00,0x00] 7190x84,0x1a,0x64,0xc0,0x00,0x00,0x00,0x00 720 721# CHECK: s_buffer_store_dwordx2 s[2:3], s[12:15], s0 ; encoding: [0x86,0x00,0x64,0xc0,0x00,0x00,0x00,0x00] 7220x86,0x00,0x64,0xc0,0x00,0x00,0x00,0x00 723 724# CHECK: s_buffer_store_dwordx2 s[2:3], s[96:99], s0 ; encoding: [0xb0,0x00,0x64,0xc0,0x00,0x00,0x00,0x00] 7250xb0,0x00,0x64,0xc0,0x00,0x00,0x00,0x00 726 727# CHECK: s_buffer_store_dwordx2 s[2:3], s[8:11], s101 ; encoding: [0x84,0x00,0x64,0xc0,0x65,0x00,0x00,0x00] 7280x84,0x00,0x64,0xc0,0x65,0x00,0x00,0x00 729 730# CHECK: s_buffer_store_dwordx2 s[2:3], s[8:11], flat_scratch_lo ; encoding: [0x84,0x00,0x64,0xc0,0x66,0x00,0x00,0x00] 7310x84,0x00,0x64,0xc0,0x66,0x00,0x00,0x00 732 733# CHECK: s_buffer_store_dwordx2 s[2:3], s[8:11], flat_scratch_hi ; encoding: [0x84,0x00,0x64,0xc0,0x67,0x00,0x00,0x00] 7340x84,0x00,0x64,0xc0,0x67,0x00,0x00,0x00 735 736# CHECK: s_buffer_store_dwordx2 s[2:3], s[8:11], vcc_lo ; encoding: [0x84,0x00,0x64,0xc0,0x6a,0x00,0x00,0x00] 7370x84,0x00,0x64,0xc0,0x6a,0x00,0x00,0x00 738 739# CHECK: s_buffer_store_dwordx2 s[2:3], s[8:11], vcc_hi ; encoding: [0x84,0x00,0x64,0xc0,0x6b,0x00,0x00,0x00] 7400x84,0x00,0x64,0xc0,0x6b,0x00,0x00,0x00 741 742# CHECK: s_buffer_store_dwordx2 s[2:3], s[8:11], m0 ; encoding: [0x84,0x00,0x64,0xc0,0x7c,0x00,0x00,0x00] 7430x84,0x00,0x64,0xc0,0x7c,0x00,0x00,0x00 744 745# CHECK: s_buffer_store_dwordx2 s[2:3], s[8:11], 0x0 ; encoding: [0x84,0x00,0x66,0xc0,0x00,0x00,0x00,0x00] 7460x84,0x00,0x66,0xc0,0x00,0x00,0x00,0x00 747 748# CHECK: s_buffer_store_dwordx2 s[2:3], s[8:11], s0 glc ; encoding: [0x84,0x00,0x65,0xc0,0x00,0x00,0x00,0x00] 7490x84,0x00,0x65,0xc0,0x00,0x00,0x00,0x00 750 751# CHECK: s_buffer_store_dwordx4 s[4:7], s[8:11], s0 ; encoding: [0x04,0x01,0x68,0xc0,0x00,0x00,0x00,0x00] 7520x04,0x01,0x68,0xc0,0x00,0x00,0x00,0x00 753 754# CHECK: s_buffer_store_dwordx4 s[8:11], s[8:11], s0 ; encoding: [0x04,0x02,0x68,0xc0,0x00,0x00,0x00,0x00] 7550x04,0x02,0x68,0xc0,0x00,0x00,0x00,0x00 756 757# CHECK: s_buffer_store_dwordx4 s[96:99], s[8:11], s0 ; encoding: [0x04,0x18,0x68,0xc0,0x00,0x00,0x00,0x00] 7580x04,0x18,0x68,0xc0,0x00,0x00,0x00,0x00 759 760# CHECK: s_buffer_store_dwordx4 s[4:7], s[12:15], s0 ; encoding: [0x06,0x01,0x68,0xc0,0x00,0x00,0x00,0x00] 7610x06,0x01,0x68,0xc0,0x00,0x00,0x00,0x00 762 763# CHECK: s_buffer_store_dwordx4 s[4:7], s[96:99], s0 ; encoding: [0x30,0x01,0x68,0xc0,0x00,0x00,0x00,0x00] 7640x30,0x01,0x68,0xc0,0x00,0x00,0x00,0x00 765 766# CHECK: s_buffer_store_dwordx4 s[4:7], s[8:11], s101 ; encoding: [0x04,0x01,0x68,0xc0,0x65,0x00,0x00,0x00] 7670x04,0x01,0x68,0xc0,0x65,0x00,0x00,0x00 768 769# CHECK: s_buffer_store_dwordx4 s[4:7], s[8:11], flat_scratch_lo ; encoding: [0x04,0x01,0x68,0xc0,0x66,0x00,0x00,0x00] 7700x04,0x01,0x68,0xc0,0x66,0x00,0x00,0x00 771 772# CHECK: s_buffer_store_dwordx4 s[4:7], s[8:11], flat_scratch_hi ; encoding: [0x04,0x01,0x68,0xc0,0x67,0x00,0x00,0x00] 7730x04,0x01,0x68,0xc0,0x67,0x00,0x00,0x00 774 775# CHECK: s_buffer_store_dwordx4 s[4:7], s[8:11], vcc_lo ; encoding: [0x04,0x01,0x68,0xc0,0x6a,0x00,0x00,0x00] 7760x04,0x01,0x68,0xc0,0x6a,0x00,0x00,0x00 777 778# CHECK: s_buffer_store_dwordx4 s[4:7], s[8:11], vcc_hi ; encoding: [0x04,0x01,0x68,0xc0,0x6b,0x00,0x00,0x00] 7790x04,0x01,0x68,0xc0,0x6b,0x00,0x00,0x00 780 781# CHECK: s_buffer_store_dwordx4 s[4:7], s[8:11], m0 ; encoding: [0x04,0x01,0x68,0xc0,0x7c,0x00,0x00,0x00] 7820x04,0x01,0x68,0xc0,0x7c,0x00,0x00,0x00 783 784# CHECK: s_buffer_store_dwordx4 s[4:7], s[8:11], 0x0 ; encoding: [0x04,0x01,0x6a,0xc0,0x00,0x00,0x00,0x00] 7850x04,0x01,0x6a,0xc0,0x00,0x00,0x00,0x00 786 787# CHECK: s_buffer_store_dwordx4 s[4:7], s[8:11], s0 glc ; encoding: [0x04,0x01,0x69,0xc0,0x00,0x00,0x00,0x00] 7880x04,0x01,0x69,0xc0,0x00,0x00,0x00,0x00 789 790# CHECK: s_dcache_inv ; encoding: [0x00,0x00,0x80,0xc0,0x00,0x00,0x00,0x00] 7910x00,0x00,0x80,0xc0,0x00,0x00,0x00,0x00 792 793# CHECK: s_dcache_wb ; encoding: [0x00,0x00,0x84,0xc0,0x00,0x00,0x00,0x00] 7940x00,0x00,0x84,0xc0,0x00,0x00,0x00,0x00 795 796# CHECK: s_dcache_inv_vol ; encoding: [0x00,0x00,0x88,0xc0,0x00,0x00,0x00,0x00] 7970x00,0x00,0x88,0xc0,0x00,0x00,0x00,0x00 798 799# CHECK: s_dcache_wb_vol ; encoding: [0x00,0x00,0x8c,0xc0,0x00,0x00,0x00,0x00] 8000x00,0x00,0x8c,0xc0,0x00,0x00,0x00,0x00 801 802# CHECK: s_memtime s[10:11] ; encoding: [0x80,0x02,0x90,0xc0,0x00,0x00,0x00,0x00] 8030x80,0x02,0x90,0xc0,0x00,0x00,0x00,0x00 804 805# CHECK: s_memtime s[12:13] ; encoding: [0x00,0x03,0x90,0xc0,0x00,0x00,0x00,0x00] 8060x00,0x03,0x90,0xc0,0x00,0x00,0x00,0x00 807 808# CHECK: s_memtime s[100:101] ; encoding: [0x00,0x19,0x90,0xc0,0x00,0x00,0x00,0x00] 8090x00,0x19,0x90,0xc0,0x00,0x00,0x00,0x00 810 811# CHECK: s_memtime flat_scratch ; encoding: [0x80,0x19,0x90,0xc0,0x00,0x00,0x00,0x00] 8120x80,0x19,0x90,0xc0,0x00,0x00,0x00,0x00 813 814# CHECK: s_memtime vcc ; encoding: [0x80,0x1a,0x90,0xc0,0x00,0x00,0x00,0x00] 8150x80,0x1a,0x90,0xc0,0x00,0x00,0x00,0x00 816 817# CHECK: s_memrealtime s[10:11] ; encoding: [0x80,0x02,0x94,0xc0,0x00,0x00,0x00,0x00] 8180x80,0x02,0x94,0xc0,0x00,0x00,0x00,0x00 819 820# CHECK: s_memrealtime s[12:13] ; encoding: [0x00,0x03,0x94,0xc0,0x00,0x00,0x00,0x00] 8210x00,0x03,0x94,0xc0,0x00,0x00,0x00,0x00 822 823# CHECK: s_memrealtime s[100:101] ; encoding: [0x00,0x19,0x94,0xc0,0x00,0x00,0x00,0x00] 8240x00,0x19,0x94,0xc0,0x00,0x00,0x00,0x00 825 826# CHECK: s_memrealtime flat_scratch ; encoding: [0x80,0x19,0x94,0xc0,0x00,0x00,0x00,0x00] 8270x80,0x19,0x94,0xc0,0x00,0x00,0x00,0x00 828 829# CHECK: s_memrealtime vcc ; encoding: [0x80,0x1a,0x94,0xc0,0x00,0x00,0x00,0x00] 8300x80,0x1a,0x94,0xc0,0x00,0x00,0x00,0x00 831