104 lines · plain
1# RUN: llvm-mc -triple=amdgcn -mcpu=gfx908 -disassemble -show-encoding < %s | FileCheck %s2 3# CHECK: buffer_atomic_add_f32 v5, off, s[8:11], s3 offset:4095 ; encoding: [0xff,0x0f,0x34,0xe1,0x00,0x05,0x02,0x03]40xff,0x0f,0x34,0xe1,0x00,0x05,0x02,0x035 6# CHECK: buffer_atomic_add_f32 v255, off, s[8:11], s3 offset:4095 ; encoding: [0xff,0x0f,0x34,0xe1,0x00,0xff,0x02,0x03]70xff,0x0f,0x34,0xe1,0x00,0xff,0x02,0x038 9# CHECK: buffer_atomic_add_f32 v5, off, s[12:15], s3 offset:4095 ; encoding: [0xff,0x0f,0x34,0xe1,0x00,0x05,0x03,0x03]100xff,0x0f,0x34,0xe1,0x00,0x05,0x03,0x0311 12# CHECK: buffer_atomic_add_f32 v5, off, s[96:99], s3 offset:4095 ; encoding: [0xff,0x0f,0x34,0xe1,0x00,0x05,0x18,0x03]130xff,0x0f,0x34,0xe1,0x00,0x05,0x18,0x0314 15# CHECK: buffer_atomic_add_f32 v5, off, s[8:11], s101 offset:4095 ; encoding: [0xff,0x0f,0x34,0xe1,0x00,0x05,0x02,0x65]160xff,0x0f,0x34,0xe1,0x00,0x05,0x02,0x6517 18# CHECK: buffer_atomic_add_f32 v5, off, s[8:11], m0 offset:4095 ; encoding: [0xff,0x0f,0x34,0xe1,0x00,0x05,0x02,0x7c]190xff,0x0f,0x34,0xe1,0x00,0x05,0x02,0x7c20 21# CHECK: buffer_atomic_add_f32 v5, off, s[8:11], 0 offset:4095 ; encoding: [0xff,0x0f,0x34,0xe1,0x00,0x05,0x02,0x80]220xff,0x0f,0x34,0xe1,0x00,0x05,0x02,0x8023 24# CHECK: buffer_atomic_add_f32 v5, off, s[8:11], -1 offset:4095 ; encoding: [0xff,0x0f,0x34,0xe1,0x00,0x05,0x02,0xc1]250xff,0x0f,0x34,0xe1,0x00,0x05,0x02,0xc126 27# CHECK: buffer_atomic_add_f32 v5, v0, s[8:11], s3 idxen offset:4095 ; encoding: [0xff,0x2f,0x34,0xe1,0x00,0x05,0x02,0x03]280xff,0x2f,0x34,0xe1,0x00,0x05,0x02,0x0329 30# CHECK: buffer_atomic_add_f32 v5, v0, s[8:11], s3 offen offset:4095 ; encoding: [0xff,0x1f,0x34,0xe1,0x00,0x05,0x02,0x03]310xff,0x1f,0x34,0xe1,0x00,0x05,0x02,0x0332 33# CHECK: buffer_atomic_add_f32 v5, off, s[8:11], s3 ; encoding: [0x00,0x00,0x34,0xe1,0x00,0x05,0x02,0x03]340x00,0x00,0x34,0xe1,0x00,0x05,0x02,0x0335 36# CHECK: buffer_atomic_add_f32 v5, off, s[8:11], s3 ; encoding: [0x00,0x00,0x34,0xe1,0x00,0x05,0x02,0x03]370x00,0x00,0x34,0xe1,0x00,0x05,0x02,0x0338 39# CHECK: buffer_atomic_add_f32 v5, off, s[8:11], s3 offset:7 ; encoding: [0x07,0x00,0x34,0xe1,0x00,0x05,0x02,0x03]400x07,0x00,0x34,0xe1,0x00,0x05,0x02,0x0341 42# CHECK: buffer_atomic_add_f32 v5, off, s[8:11], s3 offset:4095 slc ; encoding: [0xff,0x0f,0x36,0xe1,0x00,0x05,0x02,0x03]430xff,0x0f,0x36,0xe1,0x00,0x05,0x02,0x0344 45# CHECK: buffer_atomic_pk_add_f16 v5, off, s[8:11], s3 offset:4095 ; encoding: [0xff,0x0f,0x38,0xe1,0x00,0x05,0x02,0x03]460xff,0x0f,0x38,0xe1,0x00,0x05,0x02,0x0347 48# CHECK: buffer_atomic_pk_add_f16 v255, off, s[8:11], s3 offset:4095 ; encoding: [0xff,0x0f,0x38,0xe1,0x00,0xff,0x02,0x03]490xff,0x0f,0x38,0xe1,0x00,0xff,0x02,0x0350 51# CHECK: buffer_atomic_pk_add_f16 v5, off, s[12:15], s3 offset:4095 ; encoding: [0xff,0x0f,0x38,0xe1,0x00,0x05,0x03,0x03]520xff,0x0f,0x38,0xe1,0x00,0x05,0x03,0x0353 54# CHECK: buffer_atomic_pk_add_f16 v5, off, s[96:99], s3 offset:4095 ; encoding: [0xff,0x0f,0x38,0xe1,0x00,0x05,0x18,0x03]550xff,0x0f,0x38,0xe1,0x00,0x05,0x18,0x0356 57# CHECK: buffer_atomic_pk_add_f16 v5, off, s[8:11], s101 offset:4095 ; encoding: [0xff,0x0f,0x38,0xe1,0x00,0x05,0x02,0x65]580xff,0x0f,0x38,0xe1,0x00,0x05,0x02,0x6559 60# CHECK: buffer_atomic_pk_add_f16 v5, off, s[8:11], m0 offset:4095 ; encoding: [0xff,0x0f,0x38,0xe1,0x00,0x05,0x02,0x7c]610xff,0x0f,0x38,0xe1,0x00,0x05,0x02,0x7c62 63# CHECK: buffer_atomic_pk_add_f16 v5, off, s[8:11], 0 offset:4095 ; encoding: [0xff,0x0f,0x38,0xe1,0x00,0x05,0x02,0x80]640xff,0x0f,0x38,0xe1,0x00,0x05,0x02,0x8065 66# CHECK: buffer_atomic_pk_add_f16 v5, off, s[8:11], -1 offset:4095 ; encoding: [0xff,0x0f,0x38,0xe1,0x00,0x05,0x02,0xc1]670xff,0x0f,0x38,0xe1,0x00,0x05,0x02,0xc168 69# CHECK: buffer_atomic_pk_add_f16 v5, v0, s[8:11], s3 idxen offset:4095 ; encoding: [0xff,0x2f,0x38,0xe1,0x00,0x05,0x02,0x03]700xff,0x2f,0x38,0xe1,0x00,0x05,0x02,0x0371 72# CHECK: buffer_atomic_pk_add_f16 v5, v0, s[8:11], s3 offen offset:4095 ; encoding: [0xff,0x1f,0x38,0xe1,0x00,0x05,0x02,0x03]730xff,0x1f,0x38,0xe1,0x00,0x05,0x02,0x0374 75# CHECK: buffer_atomic_pk_add_f16 v5, off, s[8:11], s3 ; encoding: [0x00,0x00,0x38,0xe1,0x00,0x05,0x02,0x03]760x00,0x00,0x38,0xe1,0x00,0x05,0x02,0x0377 78# CHECK: buffer_atomic_pk_add_f16 v5, off, s[8:11], s3 ; encoding: [0x00,0x00,0x38,0xe1,0x00,0x05,0x02,0x03]790x00,0x00,0x38,0xe1,0x00,0x05,0x02,0x0380 81# CHECK: buffer_atomic_pk_add_f16 v5, off, s[8:11], s3 offset:7 ; encoding: [0x07,0x00,0x38,0xe1,0x00,0x05,0x02,0x03]820x07,0x00,0x38,0xe1,0x00,0x05,0x02,0x0383 84# CHECK: buffer_atomic_pk_add_f16 v5, off, s[8:11], s3 offset:4095 slc ; encoding: [0xff,0x0f,0x3a,0xe1,0x00,0x05,0x02,0x03]850xff,0x0f,0x3a,0xe1,0x00,0x05,0x02,0x0386 87# CHECK: global_atomic_add_f32 v[1:2], v2, off offset:-1 ; encoding: [0xff,0x9f,0x34,0xdd,0x01,0x02,0x7f,0x00]880xff,0x9f,0x34,0xdd,0x01,0x02,0x7f,0x0089 90# CHECK: global_atomic_add_f32 v[1:2], v255, off offset:-1 ; encoding: [0xff,0x9f,0x34,0xdd,0x01,0xff,0x7f,0x00]910xff,0x9f,0x34,0xdd,0x01,0xff,0x7f,0x0092 93# CHECK: global_atomic_add_f32 v[1:2], v2, off ; encoding: [0x00,0x80,0x34,0xdd,0x01,0x02,0x7f,0x00]940x00,0x80,0x34,0xdd,0x01,0x02,0x7f,0x0095 96# CHECK: global_atomic_pk_add_f16 v[1:2], v2, off offset:-1 ; encoding: [0xff,0x9f,0x38,0xdd,0x01,0x02,0x7f,0x00]970xff,0x9f,0x38,0xdd,0x01,0x02,0x7f,0x0098 99# CHECK: global_atomic_pk_add_f16 v[1:2], v255, off offset:-1 ; encoding: [0xff,0x9f,0x38,0xdd,0x01,0xff,0x7f,0x00]1000xff,0x9f,0x38,0xdd,0x01,0xff,0x7f,0x00101 102# CHECK: global_atomic_pk_add_f16 v[1:2], v2, off ; encoding: [0x00,0x80,0x38,0xdd,0x01,0x02,0x7f,0x00]1030x00,0x80,0x38,0xdd,0x01,0x02,0x7f,0x00104