1# RUN: llvm-mc -arch=amdgcn -mcpu=tonga -disassemble -show-encoding < %s | FileCheck %s -check-prefix=VI 2 3# VI: s_dcache_wb ; encoding: [0x00,0x00,0x84,0xc0,0x00,0x00,0x00,0x00] 40x00 0x00 0x84 0xc0 0x00 0x00 0x00 0x00 5 6# VI: s_dcache_wb_vol ; encoding: [0x00,0x00,0x8c,0xc0,0x00,0x00,0x00,0x00] 70x00 0x00 0x8c 0xc0 0x00 0x00 0x00 0x00 8 9# VI: s_memrealtime s[4:5] ; encoding: [0x00,0x01,0x94,0xc0,0x00,0x00,0x00,0x00] 100x00 0x01 0x94 0xc0 0x00 0x00 0x00 0x00 11 12# VI: s_store_dword s1, s[2:3], 0xfc ; encoding: [0x41,0x00,0x42,0xc0,0xfc,0x00,0x00,0x00] 130x41 0x00 0x42 0xc0 0xfc 0x00 0x00 0x00 14 15# VI: s_store_dword s1, s[2:3], 0xfc glc ; encoding: [0x41,0x00,0x43,0xc0,0xfc,0x00,0x00,0x00] 160x41 0x00 0x43 0xc0 0xfc 0x00 0x00 0x00 17 18# VI: s_store_dword s1, s[2:3], s4 ; encoding: [0x41,0x00,0x40,0xc0,0x04,0x00,0x00,0x00] 190x41 0x00 0x40 0xc0 0x04 0x00 0x00 0x00 20 21# VI: s_store_dword s1, s[2:3], s4 glc ; encoding: [0x41,0x00,0x41,0xc0,0x04,0x00,0x00,0x00] 220x41 0x00 0x41 0xc0 0x04 0x00 0x00 0x00 23 24# VI: s_load_dword s1, s[2:3], 0xfc glc ; encoding: [0x41,0x00,0x03,0xc0,0xfc,0x00,0x00,0x00] 250x41 0x00 0x03 0xc0 0xfc 0x00 0x00 0x00 26 27# VI: s_load_dword s1, s[2:3], s4 glc ; encoding: [0x41,0x00,0x01,0xc0,0x04,0x00,0x00,0x00] 280x41 0x00 0x01 0xc0 0x04 0x00 0x00 0x00 29 30# VI: s_buffer_store_dword s10, s[92:95], m0 ; encoding: [0xae,0x02,0x60,0xc0,0x7c,0x00,0x00,0x00] 310xae 0x02 0x60 0xc0 0x7c 0x00 0x00 0x00 32 33# VI: s_buffer_store_dwordx2 s[10:11], s[92:95], m0 ; encoding: [0xae,0x02,0x64,0xc0,0x7c,0x00,0x00,0x00] 340xae 0x02 0x64 0xc0 0x7c 0x00 0x00 0x00 35 36# VI: s_buffer_store_dwordx4 s[8:11], s[92:95], m0 glc ; encoding: [0x2e,0x02,0x69,0xc0,0x7c,0x00,0x00,0x00] 370x2e 0x02 0x69 0xc0 0x7c 0x00 0x00 0x00 38 39# VI: s_buffer_load_dword s10, s[92:95], m0 ; encoding: [0xae,0x02,0x20,0xc0,0x7c,0x00,0x00,0x00] 400xae 0x02 0x20 0xc0 0x7c 0x00 0x00 0x00 41 42# VI: s_buffer_load_dwordx2 s[10:11], s[92:95], m0 ; encoding: [0xae,0x02,0x24,0xc0,0x7c,0x00,0x00,0x00] 430xae 0x02 0x24 0xc0 0x7c 0x00 0x00 0x00 44 45# VI: s_buffer_load_dwordx4 s[8:11], s[92:95], m0 glc ; encoding: [0x2e,0x02,0x29,0xc0,0x7c,0x00,0x00,0x00] 460x2e 0x02 0x29 0xc0 0x7c 0x00 0x00 0x00 47 48# VI: s_atc_probe 7, s[4:5], s0 ; encoding: [0xc2,0x01,0x98,0xc0,0x00,0x00,0x00,0x00] 490xc2,0x01,0x98,0xc0,0x00,0x00,0x00,0x00 50 51# VI: s_atc_probe 0, s[4:5], 0x0 ; encoding: [0x02,0x00,0x9a,0xc0,0x00,0x00,0x00,0x00] 520x02,0x00,0x9a,0xc0,0x00,0x00,0x00,0x00 53 54# VI: s_atc_probe_buffer 1, s[8:11], s0 ; encoding: [0x44,0x00,0x9c,0xc0,0x00,0x00,0x00,0x00] 550x44,0x00,0x9c,0xc0,0x00,0x00,0x00,0x00 56 57# VI: s_atc_probe_buffer 0, s[8:11], s101 ; encoding: [0x04,0x00,0x9c,0xc0,0x65,0x00,0x00,0x00] 580x04,0x00,0x9c,0xc0,0x65,0x00,0x00,0x00 59 60#===------------------------------------------------------------------------===# 61# Unsigned 20-bit offsets 62#===------------------------------------------------------------------------===# 63 64# VI: s_atc_probe 7, s[4:5], 0xfffff ; encoding: [0xc2,0x01,0x9a,0xc0,0xff,0xff,0x0f,0x00] 650xc2,0x01,0x9a,0xc0,0xff,0xff,0x0f,0x00 66 67# VI: s_atc_probe_buffer 1, s[8:11], 0xfffff ; encoding: [0x44,0x00,0x9e,0xc0,0xff,0xff,0x0f,0x00] 680x44,0x00,0x9e,0xc0,0xff,0xff,0x0f,0x00 69 70# VI: s_load_dword s1, s[2:3], 0xfffff ; encoding: [0x41,0x00,0x02,0xc0,0xff,0xff,0x0f,0x00] 710x41,0x00,0x02,0xc0,0xff,0xff,0x0f,0x00 72 73# VI: s_store_dword s1, s[2:3], 0xfffff ; encoding: [0x41,0x00,0x42,0xc0,0xff,0xff,0x0f,0x00] 740x41,0x00,0x42,0xc0,0xff,0xff,0x0f,0x00 75 76# VI: s_buffer_store_dword s10, s[92:95], 0xfffff ; encoding: [0xae,0x02,0x62,0xc0,0xff,0xff,0x0f,0x00] 770xae,0x02,0x62,0xc0,0xff,0xff,0x0f,0x00 78 79#===------------------------------------------------------------------------===# 80# Decoding of invalid (21-bit) buffer offsets 81#===------------------------------------------------------------------------===# 82 83# VI: s_store_dword s1, s[2:3], 0xfffff ; encoding: [0x41,0x00,0x42,0xc0,0xff,0xff,0x0f,0x00] 840x41,0x00,0x42,0xc0,0xff,0xff,0x1f,0x00 85 86# VI: s_buffer_store_dword s10, s[92:95], 0xfffff ; encoding: [0xae,0x02,0x62,0xc0,0xff,0xff,0x0f,0x00] 870xae,0x02,0x62,0xc0,0xff,0xff,0x1f,0x00 88