Skip to content

Commit 241f330

Browse files
committed
[AMDGPU] Add gfx8 assembler and disassembler test cases
Summary: This adds assembler tests for cases that were previously only in the disassembler tests, and vice versa. Reviewers: rampitec, arsenm, nhaehnle Subscribers: kzhuravl, jvesely, wdng, yaxunl, dstuttard, tpr, t-tye, jfb, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D72561
1 parent 7fa5290 commit 241f330

File tree

2 files changed

+3414
-150
lines changed

2 files changed

+3414
-150
lines changed

llvm/test/MC/AMDGPU/gfx8_asm_all.s

Lines changed: 159 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7089,6 +7089,9 @@ image_get_lod v[5:7], v1, s[8:15], s[12:15] dmask:0xd
70897089
image_get_lod v[5:7], v1, s[8:15], s[12:15] dmask:0xe
70907090
// CHECK: [0x00,0x0e,0x80,0xf1,0x01,0x05,0x62,0x00]
70917091

7092+
image_get_lod v[5:8], v1, s[8:15], s[12:15] dmask:0xf
7093+
// CHECK: [0x00,0x0f,0x80,0xf1,0x01,0x05,0x62,0x00]
7094+
70927095
image_get_lod v5, v1, s[8:15], s[12:15] dmask:0x0
70937096
// CHECK: [0x00,0x00,0x80,0xf1,0x01,0x05,0x62,0x00]
70947097

@@ -8781,6 +8784,12 @@ buffer_atomic_swap v5, off, s[8:11], 0 offset:4095
87818784
buffer_atomic_swap v5, off, s[8:11], -1 offset:4095
87828785
// CHECK: [0xff,0x0f,0x00,0xe1,0x00,0x05,0x02,0xc1]
87838786

8787+
buffer_atomic_swap v5, off, s[8:11], 0.5 offset:4095
8788+
// CHECK: [0xff,0x0f,0x00,0xe1,0x00,0x05,0x02,0xf0]
8789+
8790+
buffer_atomic_swap v5, off, s[8:11], -4.0 offset:4095
8791+
// CHECK: [0xff,0x0f,0x00,0xe1,0x00,0x05,0x02,0xf7]
8792+
87848793
buffer_atomic_swap v5, v0, s[8:11], s3 idxen offset:4095
87858794
// CHECK: [0xff,0x2f,0x00,0xe1,0x00,0x05,0x02,0x03]
87868795

@@ -8829,6 +8838,12 @@ buffer_atomic_cmpswap v[5:6], off, s[8:11], 0 offset:4095
88298838
buffer_atomic_cmpswap v[5:6], off, s[8:11], -1 offset:4095
88308839
// CHECK: [0xff,0x0f,0x04,0xe1,0x00,0x05,0x02,0xc1]
88318840

8841+
buffer_atomic_cmpswap v[5:6], off, s[8:11], 0.5 offset:4095
8842+
// CHECK: [0xff,0x0f,0x04,0xe1,0x00,0x05,0x02,0xf0]
8843+
8844+
buffer_atomic_cmpswap v[5:6], off, s[8:11], -4.0 offset:4095
8845+
// CHECK: [0xff,0x0f,0x04,0xe1,0x00,0x05,0x02,0xf7]
8846+
88328847
buffer_atomic_cmpswap v[5:6], v0, s[8:11], s3 idxen offset:4095
88338848
// CHECK: [0xff,0x2f,0x04,0xe1,0x00,0x05,0x02,0x03]
88348849

@@ -8877,6 +8892,12 @@ buffer_atomic_add v5, off, s[8:11], 0 offset:4095
88778892
buffer_atomic_add v5, off, s[8:11], -1 offset:4095
88788893
// CHECK: [0xff,0x0f,0x08,0xe1,0x00,0x05,0x02,0xc1]
88798894

8895+
buffer_atomic_add v5, off, s[8:11], 0.5 offset:4095
8896+
// CHECK: [0xff,0x0f,0x08,0xe1,0x00,0x05,0x02,0xf0]
8897+
8898+
buffer_atomic_add v5, off, s[8:11], -4.0 offset:4095
8899+
// CHECK: [0xff,0x0f,0x08,0xe1,0x00,0x05,0x02,0xf7]
8900+
88808901
buffer_atomic_add v5, v0, s[8:11], s3 idxen offset:4095
88818902
// CHECK: [0xff,0x2f,0x08,0xe1,0x00,0x05,0x02,0x03]
88828903

@@ -8925,6 +8946,12 @@ buffer_atomic_sub v5, off, s[8:11], 0 offset:4095
89258946
buffer_atomic_sub v5, off, s[8:11], -1 offset:4095
89268947
// CHECK: [0xff,0x0f,0x0c,0xe1,0x00,0x05,0x02,0xc1]
89278948

8949+
buffer_atomic_sub v5, off, s[8:11], 0.5 offset:4095
8950+
// CHECK: [0xff,0x0f,0x0c,0xe1,0x00,0x05,0x02,0xf0]
8951+
8952+
buffer_atomic_sub v5, off, s[8:11], -4.0 offset:4095
8953+
// CHECK: [0xff,0x0f,0x0c,0xe1,0x00,0x05,0x02,0xf7]
8954+
89288955
buffer_atomic_sub v5, v0, s[8:11], s3 idxen offset:4095
89298956
// CHECK: [0xff,0x2f,0x0c,0xe1,0x00,0x05,0x02,0x03]
89308957

@@ -8973,6 +9000,12 @@ buffer_atomic_smin v5, off, s[8:11], 0 offset:4095
89739000
buffer_atomic_smin v5, off, s[8:11], -1 offset:4095
89749001
// CHECK: [0xff,0x0f,0x10,0xe1,0x00,0x05,0x02,0xc1]
89759002

9003+
buffer_atomic_smin v5, off, s[8:11], 0.5 offset:4095
9004+
// CHECK: [0xff,0x0f,0x10,0xe1,0x00,0x05,0x02,0xf0]
9005+
9006+
buffer_atomic_smin v5, off, s[8:11], -4.0 offset:4095
9007+
// CHECK: [0xff,0x0f,0x10,0xe1,0x00,0x05,0x02,0xf7]
9008+
89769009
buffer_atomic_smin v5, v0, s[8:11], s3 idxen offset:4095
89779010
// CHECK: [0xff,0x2f,0x10,0xe1,0x00,0x05,0x02,0x03]
89789011

@@ -9021,6 +9054,12 @@ buffer_atomic_umin v5, off, s[8:11], 0 offset:4095
90219054
buffer_atomic_umin v5, off, s[8:11], -1 offset:4095
90229055
// CHECK: [0xff,0x0f,0x14,0xe1,0x00,0x05,0x02,0xc1]
90239056

9057+
buffer_atomic_umin v5, off, s[8:11], 0.5 offset:4095
9058+
// CHECK: [0xff,0x0f,0x14,0xe1,0x00,0x05,0x02,0xf0]
9059+
9060+
buffer_atomic_umin v5, off, s[8:11], -4.0 offset:4095
9061+
// CHECK: [0xff,0x0f,0x14,0xe1,0x00,0x05,0x02,0xf7]
9062+
90249063
buffer_atomic_umin v5, v0, s[8:11], s3 idxen offset:4095
90259064
// CHECK: [0xff,0x2f,0x14,0xe1,0x00,0x05,0x02,0x03]
90269065

@@ -9069,6 +9108,12 @@ buffer_atomic_smax v5, off, s[8:11], 0 offset:4095
90699108
buffer_atomic_smax v5, off, s[8:11], -1 offset:4095
90709109
// CHECK: [0xff,0x0f,0x18,0xe1,0x00,0x05,0x02,0xc1]
90719110

9111+
buffer_atomic_smax v5, off, s[8:11], 0.5 offset:4095
9112+
// CHECK: [0xff,0x0f,0x18,0xe1,0x00,0x05,0x02,0xf0]
9113+
9114+
buffer_atomic_smax v5, off, s[8:11], -4.0 offset:4095
9115+
// CHECK: [0xff,0x0f,0x18,0xe1,0x00,0x05,0x02,0xf7]
9116+
90729117
buffer_atomic_smax v5, v0, s[8:11], s3 idxen offset:4095
90739118
// CHECK: [0xff,0x2f,0x18,0xe1,0x00,0x05,0x02,0x03]
90749119

@@ -9117,6 +9162,12 @@ buffer_atomic_umax v5, off, s[8:11], 0 offset:4095
91179162
buffer_atomic_umax v5, off, s[8:11], -1 offset:4095
91189163
// CHECK: [0xff,0x0f,0x1c,0xe1,0x00,0x05,0x02,0xc1]
91199164

9165+
buffer_atomic_umax v5, off, s[8:11], 0.5 offset:4095
9166+
// CHECK: [0xff,0x0f,0x1c,0xe1,0x00,0x05,0x02,0xf0]
9167+
9168+
buffer_atomic_umax v5, off, s[8:11], -4.0 offset:4095
9169+
// CHECK: [0xff,0x0f,0x1c,0xe1,0x00,0x05,0x02,0xf7]
9170+
91209171
buffer_atomic_umax v5, v0, s[8:11], s3 idxen offset:4095
91219172
// CHECK: [0xff,0x2f,0x1c,0xe1,0x00,0x05,0x02,0x03]
91229173

@@ -9165,6 +9216,12 @@ buffer_atomic_and v5, off, s[8:11], 0 offset:4095
91659216
buffer_atomic_and v5, off, s[8:11], -1 offset:4095
91669217
// CHECK: [0xff,0x0f,0x20,0xe1,0x00,0x05,0x02,0xc1]
91679218

9219+
buffer_atomic_and v5, off, s[8:11], 0.5 offset:4095
9220+
// CHECK: [0xff,0x0f,0x20,0xe1,0x00,0x05,0x02,0xf0]
9221+
9222+
buffer_atomic_and v5, off, s[8:11], -4.0 offset:4095
9223+
// CHECK: [0xff,0x0f,0x20,0xe1,0x00,0x05,0x02,0xf7]
9224+
91689225
buffer_atomic_and v5, v0, s[8:11], s3 idxen offset:4095
91699226
// CHECK: [0xff,0x2f,0x20,0xe1,0x00,0x05,0x02,0x03]
91709227

@@ -9213,6 +9270,12 @@ buffer_atomic_or v5, off, s[8:11], 0 offset:4095
92139270
buffer_atomic_or v5, off, s[8:11], -1 offset:4095
92149271
// CHECK: [0xff,0x0f,0x24,0xe1,0x00,0x05,0x02,0xc1]
92159272

9273+
buffer_atomic_or v5, off, s[8:11], 0.5 offset:4095
9274+
// CHECK: [0xff,0x0f,0x24,0xe1,0x00,0x05,0x02,0xf0]
9275+
9276+
buffer_atomic_or v5, off, s[8:11], -4.0 offset:4095
9277+
// CHECK: [0xff,0x0f,0x24,0xe1,0x00,0x05,0x02,0xf7]
9278+
92169279
buffer_atomic_or v5, v0, s[8:11], s3 idxen offset:4095
92179280
// CHECK: [0xff,0x2f,0x24,0xe1,0x00,0x05,0x02,0x03]
92189281

@@ -9261,6 +9324,12 @@ buffer_atomic_xor v5, off, s[8:11], 0 offset:4095
92619324
buffer_atomic_xor v5, off, s[8:11], -1 offset:4095
92629325
// CHECK: [0xff,0x0f,0x28,0xe1,0x00,0x05,0x02,0xc1]
92639326

9327+
buffer_atomic_xor v5, off, s[8:11], 0.5 offset:4095
9328+
// CHECK: [0xff,0x0f,0x28,0xe1,0x00,0x05,0x02,0xf0]
9329+
9330+
buffer_atomic_xor v5, off, s[8:11], -4.0 offset:4095
9331+
// CHECK: [0xff,0x0f,0x28,0xe1,0x00,0x05,0x02,0xf7]
9332+
92649333
buffer_atomic_xor v5, v0, s[8:11], s3 idxen offset:4095
92659334
// CHECK: [0xff,0x2f,0x28,0xe1,0x00,0x05,0x02,0x03]
92669335

@@ -9309,6 +9378,12 @@ buffer_atomic_inc v5, off, s[8:11], 0 offset:4095
93099378
buffer_atomic_inc v5, off, s[8:11], -1 offset:4095
93109379
// CHECK: [0xff,0x0f,0x2c,0xe1,0x00,0x05,0x02,0xc1]
93119380

9381+
buffer_atomic_inc v5, off, s[8:11], 0.5 offset:4095
9382+
// CHECK: [0xff,0x0f,0x2c,0xe1,0x00,0x05,0x02,0xf0]
9383+
9384+
buffer_atomic_inc v5, off, s[8:11], -4.0 offset:4095
9385+
// CHECK: [0xff,0x0f,0x2c,0xe1,0x00,0x05,0x02,0xf7]
9386+
93129387
buffer_atomic_inc v5, v0, s[8:11], s3 idxen offset:4095
93139388
// CHECK: [0xff,0x2f,0x2c,0xe1,0x00,0x05,0x02,0x03]
93149389

@@ -9357,6 +9432,12 @@ buffer_atomic_dec v5, off, s[8:11], 0 offset:4095
93579432
buffer_atomic_dec v5, off, s[8:11], -1 offset:4095
93589433
// CHECK: [0xff,0x0f,0x30,0xe1,0x00,0x05,0x02,0xc1]
93599434

9435+
buffer_atomic_dec v5, off, s[8:11], 0.5 offset:4095
9436+
// CHECK: [0xff,0x0f,0x30,0xe1,0x00,0x05,0x02,0xf0]
9437+
9438+
buffer_atomic_dec v5, off, s[8:11], -4.0 offset:4095
9439+
// CHECK: [0xff,0x0f,0x30,0xe1,0x00,0x05,0x02,0xf7]
9440+
93609441
buffer_atomic_dec v5, v0, s[8:11], s3 idxen offset:4095
93619442
// CHECK: [0xff,0x2f,0x30,0xe1,0x00,0x05,0x02,0x03]
93629443

@@ -9405,6 +9486,12 @@ buffer_atomic_swap_x2 v[5:6], off, s[8:11], 0 offset:4095
94059486
buffer_atomic_swap_x2 v[5:6], off, s[8:11], -1 offset:4095
94069487
// CHECK: [0xff,0x0f,0x80,0xe1,0x00,0x05,0x02,0xc1]
94079488

9489+
buffer_atomic_swap_x2 v[5:6], off, s[8:11], 0.5 offset:4095
9490+
// CHECK: [0xff,0x0f,0x80,0xe1,0x00,0x05,0x02,0xf0]
9491+
9492+
buffer_atomic_swap_x2 v[5:6], off, s[8:11], -4.0 offset:4095
9493+
// CHECK: [0xff,0x0f,0x80,0xe1,0x00,0x05,0x02,0xf7]
9494+
94089495
buffer_atomic_swap_x2 v[5:6], v0, s[8:11], s3 idxen offset:4095
94099496
// CHECK: [0xff,0x2f,0x80,0xe1,0x00,0x05,0x02,0x03]
94109497

@@ -9453,6 +9540,12 @@ buffer_atomic_cmpswap_x2 v[5:8], off, s[8:11], 0 offset:4095
94539540
buffer_atomic_cmpswap_x2 v[5:8], off, s[8:11], -1 offset:4095
94549541
// CHECK: [0xff,0x0f,0x84,0xe1,0x00,0x05,0x02,0xc1]
94559542

9543+
buffer_atomic_cmpswap_x2 v[5:8], off, s[8:11], 0.5 offset:4095
9544+
// CHECK: [0xff,0x0f,0x84,0xe1,0x00,0x05,0x02,0xf0]
9545+
9546+
buffer_atomic_cmpswap_x2 v[5:8], off, s[8:11], -4.0 offset:4095
9547+
// CHECK: [0xff,0x0f,0x84,0xe1,0x00,0x05,0x02,0xf7]
9548+
94569549
buffer_atomic_cmpswap_x2 v[5:8], v0, s[8:11], s3 idxen offset:4095
94579550
// CHECK: [0xff,0x2f,0x84,0xe1,0x00,0x05,0x02,0x03]
94589551

@@ -9501,6 +9594,12 @@ buffer_atomic_add_x2 v[5:6], off, s[8:11], 0 offset:4095
95019594
buffer_atomic_add_x2 v[5:6], off, s[8:11], -1 offset:4095
95029595
// CHECK: [0xff,0x0f,0x88,0xe1,0x00,0x05,0x02,0xc1]
95039596

9597+
buffer_atomic_add_x2 v[5:6], off, s[8:11], 0.5 offset:4095
9598+
// CHECK: [0xff,0x0f,0x88,0xe1,0x00,0x05,0x02,0xf0]
9599+
9600+
buffer_atomic_add_x2 v[5:6], off, s[8:11], -4.0 offset:4095
9601+
// CHECK: [0xff,0x0f,0x88,0xe1,0x00,0x05,0x02,0xf7]
9602+
95049603
buffer_atomic_add_x2 v[5:6], v0, s[8:11], s3 idxen offset:4095
95059604
// CHECK: [0xff,0x2f,0x88,0xe1,0x00,0x05,0x02,0x03]
95069605

@@ -9549,6 +9648,12 @@ buffer_atomic_sub_x2 v[5:6], off, s[8:11], 0 offset:4095
95499648
buffer_atomic_sub_x2 v[5:6], off, s[8:11], -1 offset:4095
95509649
// CHECK: [0xff,0x0f,0x8c,0xe1,0x00,0x05,0x02,0xc1]
95519650

9651+
buffer_atomic_sub_x2 v[5:6], off, s[8:11], 0.5 offset:4095
9652+
// CHECK: [0xff,0x0f,0x8c,0xe1,0x00,0x05,0x02,0xf0]
9653+
9654+
buffer_atomic_sub_x2 v[5:6], off, s[8:11], -4.0 offset:4095
9655+
// CHECK: [0xff,0x0f,0x8c,0xe1,0x00,0x05,0x02,0xf7]
9656+
95529657
buffer_atomic_sub_x2 v[5:6], v0, s[8:11], s3 idxen offset:4095
95539658
// CHECK: [0xff,0x2f,0x8c,0xe1,0x00,0x05,0x02,0x03]
95549659

@@ -9597,6 +9702,12 @@ buffer_atomic_smin_x2 v[5:6], off, s[8:11], 0 offset:4095
95979702
buffer_atomic_smin_x2 v[5:6], off, s[8:11], -1 offset:4095
95989703
// CHECK: [0xff,0x0f,0x90,0xe1,0x00,0x05,0x02,0xc1]
95999704

9705+
buffer_atomic_smin_x2 v[5:6], off, s[8:11], 0.5 offset:4095
9706+
// CHECK: [0xff,0x0f,0x90,0xe1,0x00,0x05,0x02,0xf0]
9707+
9708+
buffer_atomic_smin_x2 v[5:6], off, s[8:11], -4.0 offset:4095
9709+
// CHECK: [0xff,0x0f,0x90,0xe1,0x00,0x05,0x02,0xf7]
9710+
96009711
buffer_atomic_smin_x2 v[5:6], v0, s[8:11], s3 idxen offset:4095
96019712
// CHECK: [0xff,0x2f,0x90,0xe1,0x00,0x05,0x02,0x03]
96029713

@@ -9645,6 +9756,12 @@ buffer_atomic_umin_x2 v[5:6], off, s[8:11], 0 offset:4095
96459756
buffer_atomic_umin_x2 v[5:6], off, s[8:11], -1 offset:4095
96469757
// CHECK: [0xff,0x0f,0x94,0xe1,0x00,0x05,0x02,0xc1]
96479758

9759+
buffer_atomic_umin_x2 v[5:6], off, s[8:11], 0.5 offset:4095
9760+
// CHECK: [0xff,0x0f,0x94,0xe1,0x00,0x05,0x02,0xf0]
9761+
9762+
buffer_atomic_umin_x2 v[5:6], off, s[8:11], -4.0 offset:4095
9763+
// CHECK: [0xff,0x0f,0x94,0xe1,0x00,0x05,0x02,0xf7]
9764+
96489765
buffer_atomic_umin_x2 v[5:6], v0, s[8:11], s3 idxen offset:4095
96499766
// CHECK: [0xff,0x2f,0x94,0xe1,0x00,0x05,0x02,0x03]
96509767

@@ -9693,6 +9810,12 @@ buffer_atomic_smax_x2 v[5:6], off, s[8:11], 0 offset:4095
96939810
buffer_atomic_smax_x2 v[5:6], off, s[8:11], -1 offset:4095
96949811
// CHECK: [0xff,0x0f,0x98,0xe1,0x00,0x05,0x02,0xc1]
96959812

9813+
buffer_atomic_smax_x2 v[5:6], off, s[8:11], 0.5 offset:4095
9814+
// CHECK: [0xff,0x0f,0x98,0xe1,0x00,0x05,0x02,0xf0]
9815+
9816+
buffer_atomic_smax_x2 v[5:6], off, s[8:11], -4.0 offset:4095
9817+
// CHECK: [0xff,0x0f,0x98,0xe1,0x00,0x05,0x02,0xf7]
9818+
96969819
buffer_atomic_smax_x2 v[5:6], v0, s[8:11], s3 idxen offset:4095
96979820
// CHECK: [0xff,0x2f,0x98,0xe1,0x00,0x05,0x02,0x03]
96989821

@@ -9741,6 +9864,12 @@ buffer_atomic_umax_x2 v[5:6], off, s[8:11], 0 offset:4095
97419864
buffer_atomic_umax_x2 v[5:6], off, s[8:11], -1 offset:4095
97429865
// CHECK: [0xff,0x0f,0x9c,0xe1,0x00,0x05,0x02,0xc1]
97439866

9867+
buffer_atomic_umax_x2 v[5:6], off, s[8:11], 0.5 offset:4095
9868+
// CHECK: [0xff,0x0f,0x9c,0xe1,0x00,0x05,0x02,0xf0]
9869+
9870+
buffer_atomic_umax_x2 v[5:6], off, s[8:11], -4.0 offset:4095
9871+
// CHECK: [0xff,0x0f,0x9c,0xe1,0x00,0x05,0x02,0xf7]
9872+
97449873
buffer_atomic_umax_x2 v[5:6], v0, s[8:11], s3 idxen offset:4095
97459874
// CHECK: [0xff,0x2f,0x9c,0xe1,0x00,0x05,0x02,0x03]
97469875

@@ -9789,6 +9918,12 @@ buffer_atomic_and_x2 v[5:6], off, s[8:11], 0 offset:4095
97899918
buffer_atomic_and_x2 v[5:6], off, s[8:11], -1 offset:4095
97909919
// CHECK: [0xff,0x0f,0xa0,0xe1,0x00,0x05,0x02,0xc1]
97919920

9921+
buffer_atomic_and_x2 v[5:6], off, s[8:11], 0.5 offset:4095
9922+
// CHECK: [0xff,0x0f,0xa0,0xe1,0x00,0x05,0x02,0xf0]
9923+
9924+
buffer_atomic_and_x2 v[5:6], off, s[8:11], -4.0 offset:4095
9925+
// CHECK: [0xff,0x0f,0xa0,0xe1,0x00,0x05,0x02,0xf7]
9926+
97929927
buffer_atomic_and_x2 v[5:6], v0, s[8:11], s3 idxen offset:4095
97939928
// CHECK: [0xff,0x2f,0xa0,0xe1,0x00,0x05,0x02,0x03]
97949929

@@ -9837,6 +9972,12 @@ buffer_atomic_or_x2 v[5:6], off, s[8:11], 0 offset:4095
98379972
buffer_atomic_or_x2 v[5:6], off, s[8:11], -1 offset:4095
98389973
// CHECK: [0xff,0x0f,0xa4,0xe1,0x00,0x05,0x02,0xc1]
98399974

9975+
buffer_atomic_or_x2 v[5:6], off, s[8:11], 0.5 offset:4095
9976+
// CHECK: [0xff,0x0f,0xa4,0xe1,0x00,0x05,0x02,0xf0]
9977+
9978+
buffer_atomic_or_x2 v[5:6], off, s[8:11], -4.0 offset:4095
9979+
// CHECK: [0xff,0x0f,0xa4,0xe1,0x00,0x05,0x02,0xf7]
9980+
98409981
buffer_atomic_or_x2 v[5:6], v0, s[8:11], s3 idxen offset:4095
98419982
// CHECK: [0xff,0x2f,0xa4,0xe1,0x00,0x05,0x02,0x03]
98429983

@@ -9885,6 +10026,12 @@ buffer_atomic_xor_x2 v[5:6], off, s[8:11], 0 offset:4095
988510026
buffer_atomic_xor_x2 v[5:6], off, s[8:11], -1 offset:4095
988610027
// CHECK: [0xff,0x0f,0xa8,0xe1,0x00,0x05,0x02,0xc1]
988710028

10029+
buffer_atomic_xor_x2 v[5:6], off, s[8:11], 0.5 offset:4095
10030+
// CHECK: [0xff,0x0f,0xa8,0xe1,0x00,0x05,0x02,0xf0]
10031+
10032+
buffer_atomic_xor_x2 v[5:6], off, s[8:11], -4.0 offset:4095
10033+
// CHECK: [0xff,0x0f,0xa8,0xe1,0x00,0x05,0x02,0xf7]
10034+
988810035
buffer_atomic_xor_x2 v[5:6], v0, s[8:11], s3 idxen offset:4095
988910036
// CHECK: [0xff,0x2f,0xa8,0xe1,0x00,0x05,0x02,0x03]
989010037

@@ -9933,6 +10080,12 @@ buffer_atomic_inc_x2 v[5:6], off, s[8:11], 0 offset:4095
993310080
buffer_atomic_inc_x2 v[5:6], off, s[8:11], -1 offset:4095
993410081
// CHECK: [0xff,0x0f,0xac,0xe1,0x00,0x05,0x02,0xc1]
993510082

10083+
buffer_atomic_inc_x2 v[5:6], off, s[8:11], 0.5 offset:4095
10084+
// CHECK: [0xff,0x0f,0xac,0xe1,0x00,0x05,0x02,0xf0]
10085+
10086+
buffer_atomic_inc_x2 v[5:6], off, s[8:11], -4.0 offset:4095
10087+
// CHECK: [0xff,0x0f,0xac,0xe1,0x00,0x05,0x02,0xf7]
10088+
993610089
buffer_atomic_inc_x2 v[5:6], v0, s[8:11], s3 idxen offset:4095
993710090
// CHECK: [0xff,0x2f,0xac,0xe1,0x00,0x05,0x02,0x03]
993810091

@@ -9981,6 +10134,12 @@ buffer_atomic_dec_x2 v[5:6], off, s[8:11], 0 offset:4095
998110134
buffer_atomic_dec_x2 v[5:6], off, s[8:11], -1 offset:4095
998210135
// CHECK: [0xff,0x0f,0xb0,0xe1,0x00,0x05,0x02,0xc1]
998310136

10137+
buffer_atomic_dec_x2 v[5:6], off, s[8:11], 0.5 offset:4095
10138+
// CHECK: [0xff,0x0f,0xb0,0xe1,0x00,0x05,0x02,0xf0]
10139+
10140+
buffer_atomic_dec_x2 v[5:6], off, s[8:11], -4.0 offset:4095
10141+
// CHECK: [0xff,0x0f,0xb0,0xe1,0x00,0x05,0x02,0xf7]
10142+
998410143
buffer_atomic_dec_x2 v[5:6], v0, s[8:11], s3 idxen offset:4095
998510144
// CHECK: [0xff,0x2f,0xb0,0xe1,0x00,0x05,0x02,0x03]
998610145

0 commit comments

Comments
 (0)