1# RUN: llvm-mc -arch=amdgcn -mcpu=gfx1010 -disassemble -show-encoding < %s | FileCheck %s
2
3#===------------------------------------------------------------------------===#
4# scratch_load
5#===------------------------------------------------------------------------===#
6
7# CHECK: scratch_load_dword v1, v255, off offset:-1 glc dlc ; encoding: [0xff,0x5f,0x31,0xdc,0xff,0x00,0x7d,0x01]
80xff 0x5f 0x31 0xdc 0xff 0x00 0x7d 0x01
9
10# CHECK: scratch_load_dword v5, v255, off offset:-1 glc slc ; encoding: [0xff,0x4f,0x33,0xdc,0xff,0x00,0x7d,0x05]
110xff 0x4f 0x33 0xdc 0xff 0x00 0x7d 0x05
12
13# CHECK: scratch_load_dword v0, v1, off offset:-2048 glc slc dlc ; encoding: [0x00,0x58,0x33,0xdc,0x01,0x00,0x7d,0x00]
140x00 0x58 0x33 0xdc 0x01 0x00 0x7d 0x00
15
16# CHECK: scratch_load_dword v255, off, s105 offset:2047 dlc ; encoding: [0xff,0x57,0x30,0xdc,0x00,0x00,0x69,0xff]
170xff 0x57 0x30 0xdc 0x00 0x00 0x69 0xff
18
19# CHECK: scratch_load_dword v255, v2, off ; encoding: [0x00,0x40,0x30,0xdc,0x02,0x00,0x7d,0xff]
200x00 0x40 0x30 0xdc 0x02 0x00 0x7d 0xff
21
22# CHECK: scratch_load_dword v5, v0, off dlc ; encoding: [0x00,0x50,0x30,0xdc,0x00,0x00,0x7d,0x05]
230x00 0x50 0x30 0xdc 0x00 0x00 0x7d 0x05
24
25# CHECK: scratch_load_dword v5, v3, off slc ; encoding: [0x00,0x40,0x32,0xdc,0x03,0x00,0x7d,0x05]
260x00 0x40 0x32 0xdc 0x03 0x00 0x7d 0x05
27
28# CHECK: scratch_load_dword v5, v255, off slc dlc ; encoding: [0x00,0x50,0x32,0xdc,0xff,0x00,0x7d,0x05]
290x00 0x50 0x32 0xdc 0xff 0x00 0x7d 0x05
30
31# CHECK: scratch_load_dword v255, off, s2 offset:1 ; encoding: [0x01,0x40,0x30,0xdc,0x00,0x00,0x02,0xff]
320x01 0x40 0x30 0xdc 0x00 0x00 0x02 0xff
33
34#===------------------------------------------------------------------------===#
35# scratch_store
36#===------------------------------------------------------------------------===#
37
38# CHECK: scratch_store_dword off, v2, s3 offset:-1 ; encoding: [0xff,0x4f,0x70,0xdc,0x00,0x02,0x03,0x00]
390xff,0x4f,0x70,0xdc,0x00,0x02,0x03,0x00
40
41# CHECK: scratch_store_dword off, v255, s3 offset:-1 ; encoding: [0xff,0x4f,0x70,0xdc,0x00,0xff,0x03,0x00]
420xff,0x4f,0x70,0xdc,0x00,0xff,0x03,0x00
43
44# CHECK: scratch_store_dword off, v2, s105 offset:-1 ; encoding: [0xff,0x4f,0x70,0xdc,0x00,0x02,0x69,0x00]
450xff,0x4f,0x70,0xdc,0x00,0x02,0x69,0x00
46
47# CHECK: scratch_store_dword off, v2, vcc_lo offset:-1 ; encoding: [0xff,0x4f,0x70,0xdc,0x00,0x02,0x6a,0x00]
480xff,0x4f,0x70,0xdc,0x00,0x02,0x6a,0x00
49
50# CHECK: scratch_store_dword off, v2, vcc_hi offset:-1 ; encoding: [0xff,0x4f,0x70,0xdc,0x00,0x02,0x6b,0x00]
510xff,0x4f,0x70,0xdc,0x00,0x02,0x6b,0x00
52
53# CHECK: scratch_store_dword off, v2, ttmp15 offset:-1 ; encoding: [0xff,0x4f,0x70,0xdc,0x00,0x02,0x7b,0x00]
540xff,0x4f,0x70,0xdc,0x00,0x02,0x7b,0x00
55
56# CHECK: scratch_store_dword v0, v2, off offset:-1 ; encoding: [0xff,0x4f,0x70,0xdc,0x00,0x02,0x7d,0x00]
570xff,0x4f,0x70,0xdc,0x00,0x02,0x7d,0x00
58
59# CHECK: scratch_store_dword off, v2, s3 ; encoding: [0x00,0x40,0x70,0xdc,0x00,0x02,0x03,0x00]
600x00,0x40,0x70,0xdc,0x00,0x02,0x03,0x00
61
62# CHECK: scratch_store_dword off, v2, s3 offset:2047 ; encoding: [0xff,0x47,0x70,0xdc,0x00,0x02,0x03,0x00]
630xff,0x47,0x70,0xdc,0x00,0x02,0x03,0x00
64
65# CHECK: scratch_store_dword off, v2, s3 offset:-2048 ; encoding: [0x00,0x48,0x70,0xdc,0x00,0x02,0x03,0x00]
660x00,0x48,0x70,0xdc,0x00,0x02,0x03,0x00
67
68# CHECK: scratch_store_dword off, v2, s3 offset:-1 glc ; encoding: [0xff,0x4f,0x71,0xdc,0x00,0x02,0x03,0x00]
690xff,0x4f,0x71,0xdc,0x00,0x02,0x03,0x00
70
71# CHECK: scratch_store_dword off, v2, s3 offset:-1 slc ; encoding: [0xff,0x4f,0x72,0xdc,0x00,0x02,0x03,0x00]
720xff,0x4f,0x72,0xdc,0x00,0x02,0x03,0x00
73
74# CHECK: scratch_store_dword off, v2, s3 offset:-1 dlc ; encoding: [0xff,0x5f,0x70,0xdc,0x00,0x02,0x03,0x00]
750xff,0x5f,0x70,0xdc,0x00,0x02,0x03,0x00
76