diff options
author | Jay Foad <jay.foad@amd.com> | 2020-01-12 21:33:11 +0000 |
---|---|---|
committer | Jay Foad <jay.foad@amd.com> | 2020-01-14 08:20:28 +0000 |
commit | 63c3691f79179db9a16f260f1cf81475fdfef060 (patch) | |
tree | 464435defb14aae51f00c4c2234f0327d26cbc9f /llvm/test/MC/AMDGPU | |
parent | ed810da73270267082c347bc2919eebb7978a2fe (diff) | |
download | bcm5719-llvm-63c3691f79179db9a16f260f1cf81475fdfef060.tar.gz bcm5719-llvm-63c3691f79179db9a16f260f1cf81475fdfef060.zip |
[AMDGPU] Add gfx9 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/D72592
Diffstat (limited to 'llvm/test/MC/AMDGPU')
-rw-r--r-- | llvm/test/MC/AMDGPU/gfx9_asm_all.s | 1044 |
1 files changed, 1044 insertions, 0 deletions
diff --git a/llvm/test/MC/AMDGPU/gfx9_asm_all.s b/llvm/test/MC/AMDGPU/gfx9_asm_all.s index cb800da9ca6..6d37e2097ce 100644 --- a/llvm/test/MC/AMDGPU/gfx9_asm_all.s +++ b/llvm/test/MC/AMDGPU/gfx9_asm_all.s @@ -6262,6 +6262,9 @@ image_get_resinfo v[5:7], v1, s[8:15] dmask:0xd image_get_resinfo v[5:7], v1, s[8:15] dmask:0xe // CHECK: [0x00,0x0e,0x38,0xf0,0x01,0x05,0x02,0x00] +image_get_resinfo v[5:8], v1, s[8:15] dmask:0xf +// CHECK: [0x00,0x0f,0x38,0xf0,0x01,0x05,0x02,0x00] + image_get_resinfo v5, v1, s[8:15] dmask:0x0 // CHECK: [0x00,0x00,0x38,0xf0,0x01,0x05,0x02,0x00] @@ -9583,6 +9586,12 @@ buffer_atomic_swap v5, off, s[8:11], 0 offset:4095 buffer_atomic_swap v5, off, s[8:11], -1 offset:4095 // CHECK: [0xff,0x0f,0x00,0xe1,0x00,0x05,0x02,0xc1] +buffer_atomic_swap v5, off, s[8:11], 0.5 offset:4095 +// CHECK: [0xff,0x0f,0x00,0xe1,0x00,0x05,0x02,0xf0] + +buffer_atomic_swap v5, off, s[8:11], -4.0 offset:4095 +// CHECK: [0xff,0x0f,0x00,0xe1,0x00,0x05,0x02,0xf7] + buffer_atomic_swap v5, v0, s[8:11], s3 idxen offset:4095 // CHECK: [0xff,0x2f,0x00,0xe1,0x00,0x05,0x02,0x03] @@ -9628,6 +9637,12 @@ buffer_atomic_cmpswap v[5:6], off, s[8:11], 0 offset:4095 buffer_atomic_cmpswap v[5:6], off, s[8:11], -1 offset:4095 // CHECK: [0xff,0x0f,0x04,0xe1,0x00,0x05,0x02,0xc1] +buffer_atomic_cmpswap v[5:6], off, s[8:11], 0.5 offset:4095 +// CHECK: [0xff,0x0f,0x04,0xe1,0x00,0x05,0x02,0xf0] + +buffer_atomic_cmpswap v[5:6], off, s[8:11], -4.0 offset:4095 +// CHECK: [0xff,0x0f,0x04,0xe1,0x00,0x05,0x02,0xf7] + buffer_atomic_cmpswap v[5:6], v0, s[8:11], s3 idxen offset:4095 // CHECK: [0xff,0x2f,0x04,0xe1,0x00,0x05,0x02,0x03] @@ -9673,6 +9688,12 @@ buffer_atomic_add v5, off, s[8:11], 0 offset:4095 buffer_atomic_add v5, off, s[8:11], -1 offset:4095 // CHECK: [0xff,0x0f,0x08,0xe1,0x00,0x05,0x02,0xc1] +buffer_atomic_add v5, off, s[8:11], 0.5 offset:4095 +// CHECK: [0xff,0x0f,0x08,0xe1,0x00,0x05,0x02,0xf0] + +buffer_atomic_add v5, off, s[8:11], -4.0 offset:4095 +// CHECK: [0xff,0x0f,0x08,0xe1,0x00,0x05,0x02,0xf7] + buffer_atomic_add v5, v0, s[8:11], s3 idxen offset:4095 // CHECK: [0xff,0x2f,0x08,0xe1,0x00,0x05,0x02,0x03] @@ -9718,6 +9739,12 @@ buffer_atomic_sub v5, off, s[8:11], 0 offset:4095 buffer_atomic_sub v5, off, s[8:11], -1 offset:4095 // CHECK: [0xff,0x0f,0x0c,0xe1,0x00,0x05,0x02,0xc1] +buffer_atomic_sub v5, off, s[8:11], 0.5 offset:4095 +// CHECK: [0xff,0x0f,0x0c,0xe1,0x00,0x05,0x02,0xf0] + +buffer_atomic_sub v5, off, s[8:11], -4.0 offset:4095 +// CHECK: [0xff,0x0f,0x0c,0xe1,0x00,0x05,0x02,0xf7] + buffer_atomic_sub v5, v0, s[8:11], s3 idxen offset:4095 // CHECK: [0xff,0x2f,0x0c,0xe1,0x00,0x05,0x02,0x03] @@ -9763,6 +9790,12 @@ buffer_atomic_smin v5, off, s[8:11], 0 offset:4095 buffer_atomic_smin v5, off, s[8:11], -1 offset:4095 // CHECK: [0xff,0x0f,0x10,0xe1,0x00,0x05,0x02,0xc1] +buffer_atomic_smin v5, off, s[8:11], 0.5 offset:4095 +// CHECK: [0xff,0x0f,0x10,0xe1,0x00,0x05,0x02,0xf0] + +buffer_atomic_smin v5, off, s[8:11], -4.0 offset:4095 +// CHECK: [0xff,0x0f,0x10,0xe1,0x00,0x05,0x02,0xf7] + buffer_atomic_smin v5, v0, s[8:11], s3 idxen offset:4095 // CHECK: [0xff,0x2f,0x10,0xe1,0x00,0x05,0x02,0x03] @@ -9808,6 +9841,12 @@ buffer_atomic_umin v5, off, s[8:11], 0 offset:4095 buffer_atomic_umin v5, off, s[8:11], -1 offset:4095 // CHECK: [0xff,0x0f,0x14,0xe1,0x00,0x05,0x02,0xc1] +buffer_atomic_umin v5, off, s[8:11], 0.5 offset:4095 +// CHECK: [0xff,0x0f,0x14,0xe1,0x00,0x05,0x02,0xf0] + +buffer_atomic_umin v5, off, s[8:11], -4.0 offset:4095 +// CHECK: [0xff,0x0f,0x14,0xe1,0x00,0x05,0x02,0xf7] + buffer_atomic_umin v5, v0, s[8:11], s3 idxen offset:4095 // CHECK: [0xff,0x2f,0x14,0xe1,0x00,0x05,0x02,0x03] @@ -9853,6 +9892,12 @@ buffer_atomic_smax v5, off, s[8:11], 0 offset:4095 buffer_atomic_smax v5, off, s[8:11], -1 offset:4095 // CHECK: [0xff,0x0f,0x18,0xe1,0x00,0x05,0x02,0xc1] +buffer_atomic_smax v5, off, s[8:11], 0.5 offset:4095 +// CHECK: [0xff,0x0f,0x18,0xe1,0x00,0x05,0x02,0xf0] + +buffer_atomic_smax v5, off, s[8:11], -4.0 offset:4095 +// CHECK: [0xff,0x0f,0x18,0xe1,0x00,0x05,0x02,0xf7] + buffer_atomic_smax v5, v0, s[8:11], s3 idxen offset:4095 // CHECK: [0xff,0x2f,0x18,0xe1,0x00,0x05,0x02,0x03] @@ -9898,6 +9943,12 @@ buffer_atomic_umax v5, off, s[8:11], 0 offset:4095 buffer_atomic_umax v5, off, s[8:11], -1 offset:4095 // CHECK: [0xff,0x0f,0x1c,0xe1,0x00,0x05,0x02,0xc1] +buffer_atomic_umax v5, off, s[8:11], 0.5 offset:4095 +// CHECK: [0xff,0x0f,0x1c,0xe1,0x00,0x05,0x02,0xf0] + +buffer_atomic_umax v5, off, s[8:11], -4.0 offset:4095 +// CHECK: [0xff,0x0f,0x1c,0xe1,0x00,0x05,0x02,0xf7] + buffer_atomic_umax v5, v0, s[8:11], s3 idxen offset:4095 // CHECK: [0xff,0x2f,0x1c,0xe1,0x00,0x05,0x02,0x03] @@ -9943,6 +9994,12 @@ buffer_atomic_and v5, off, s[8:11], 0 offset:4095 buffer_atomic_and v5, off, s[8:11], -1 offset:4095 // CHECK: [0xff,0x0f,0x20,0xe1,0x00,0x05,0x02,0xc1] +buffer_atomic_and v5, off, s[8:11], 0.5 offset:4095 +// CHECK: [0xff,0x0f,0x20,0xe1,0x00,0x05,0x02,0xf0] + +buffer_atomic_and v5, off, s[8:11], -4.0 offset:4095 +// CHECK: [0xff,0x0f,0x20,0xe1,0x00,0x05,0x02,0xf7] + buffer_atomic_and v5, v0, s[8:11], s3 idxen offset:4095 // CHECK: [0xff,0x2f,0x20,0xe1,0x00,0x05,0x02,0x03] @@ -9988,6 +10045,12 @@ buffer_atomic_or v5, off, s[8:11], 0 offset:4095 buffer_atomic_or v5, off, s[8:11], -1 offset:4095 // CHECK: [0xff,0x0f,0x24,0xe1,0x00,0x05,0x02,0xc1] +buffer_atomic_or v5, off, s[8:11], 0.5 offset:4095 +// CHECK: [0xff,0x0f,0x24,0xe1,0x00,0x05,0x02,0xf0] + +buffer_atomic_or v5, off, s[8:11], -4.0 offset:4095 +// CHECK: [0xff,0x0f,0x24,0xe1,0x00,0x05,0x02,0xf7] + buffer_atomic_or v5, v0, s[8:11], s3 idxen offset:4095 // CHECK: [0xff,0x2f,0x24,0xe1,0x00,0x05,0x02,0x03] @@ -10033,6 +10096,12 @@ buffer_atomic_xor v5, off, s[8:11], 0 offset:4095 buffer_atomic_xor v5, off, s[8:11], -1 offset:4095 // CHECK: [0xff,0x0f,0x28,0xe1,0x00,0x05,0x02,0xc1] +buffer_atomic_xor v5, off, s[8:11], 0.5 offset:4095 +// CHECK: [0xff,0x0f,0x28,0xe1,0x00,0x05,0x02,0xf0] + +buffer_atomic_xor v5, off, s[8:11], -4.0 offset:4095 +// CHECK: [0xff,0x0f,0x28,0xe1,0x00,0x05,0x02,0xf7] + buffer_atomic_xor v5, v0, s[8:11], s3 idxen offset:4095 // CHECK: [0xff,0x2f,0x28,0xe1,0x00,0x05,0x02,0x03] @@ -10078,6 +10147,12 @@ buffer_atomic_inc v5, off, s[8:11], 0 offset:4095 buffer_atomic_inc v5, off, s[8:11], -1 offset:4095 // CHECK: [0xff,0x0f,0x2c,0xe1,0x00,0x05,0x02,0xc1] +buffer_atomic_inc v5, off, s[8:11], 0.5 offset:4095 +// CHECK: [0xff,0x0f,0x2c,0xe1,0x00,0x05,0x02,0xf0] + +buffer_atomic_inc v5, off, s[8:11], -4.0 offset:4095 +// CHECK: [0xff,0x0f,0x2c,0xe1,0x00,0x05,0x02,0xf7] + buffer_atomic_inc v5, v0, s[8:11], s3 idxen offset:4095 // CHECK: [0xff,0x2f,0x2c,0xe1,0x00,0x05,0x02,0x03] @@ -10123,6 +10198,12 @@ buffer_atomic_dec v5, off, s[8:11], 0 offset:4095 buffer_atomic_dec v5, off, s[8:11], -1 offset:4095 // CHECK: [0xff,0x0f,0x30,0xe1,0x00,0x05,0x02,0xc1] +buffer_atomic_dec v5, off, s[8:11], 0.5 offset:4095 +// CHECK: [0xff,0x0f,0x30,0xe1,0x00,0x05,0x02,0xf0] + +buffer_atomic_dec v5, off, s[8:11], -4.0 offset:4095 +// CHECK: [0xff,0x0f,0x30,0xe1,0x00,0x05,0x02,0xf7] + buffer_atomic_dec v5, v0, s[8:11], s3 idxen offset:4095 // CHECK: [0xff,0x2f,0x30,0xe1,0x00,0x05,0x02,0x03] @@ -10168,6 +10249,12 @@ buffer_atomic_swap_x2 v[5:6], off, s[8:11], 0 offset:4095 buffer_atomic_swap_x2 v[5:6], off, s[8:11], -1 offset:4095 // CHECK: [0xff,0x0f,0x80,0xe1,0x00,0x05,0x02,0xc1] +buffer_atomic_swap_x2 v[5:6], off, s[8:11], 0.5 offset:4095 +// CHECK: [0xff,0x0f,0x80,0xe1,0x00,0x05,0x02,0xf0] + +buffer_atomic_swap_x2 v[5:6], off, s[8:11], -4.0 offset:4095 +// CHECK: [0xff,0x0f,0x80,0xe1,0x00,0x05,0x02,0xf7] + buffer_atomic_swap_x2 v[5:6], v0, s[8:11], s3 idxen offset:4095 // CHECK: [0xff,0x2f,0x80,0xe1,0x00,0x05,0x02,0x03] @@ -10213,6 +10300,12 @@ buffer_atomic_cmpswap_x2 v[5:8], off, s[8:11], 0 offset:4095 buffer_atomic_cmpswap_x2 v[5:8], off, s[8:11], -1 offset:4095 // CHECK: [0xff,0x0f,0x84,0xe1,0x00,0x05,0x02,0xc1] +buffer_atomic_cmpswap_x2 v[5:8], off, s[8:11], 0.5 offset:4095 +// CHECK: [0xff,0x0f,0x84,0xe1,0x00,0x05,0x02,0xf0] + +buffer_atomic_cmpswap_x2 v[5:8], off, s[8:11], -4.0 offset:4095 +// CHECK: [0xff,0x0f,0x84,0xe1,0x00,0x05,0x02,0xf7] + buffer_atomic_cmpswap_x2 v[5:8], v0, s[8:11], s3 idxen offset:4095 // CHECK: [0xff,0x2f,0x84,0xe1,0x00,0x05,0x02,0x03] @@ -10258,6 +10351,12 @@ buffer_atomic_add_x2 v[5:6], off, s[8:11], 0 offset:4095 buffer_atomic_add_x2 v[5:6], off, s[8:11], -1 offset:4095 // CHECK: [0xff,0x0f,0x88,0xe1,0x00,0x05,0x02,0xc1] +buffer_atomic_add_x2 v[5:6], off, s[8:11], 0.5 offset:4095 +// CHECK: [0xff,0x0f,0x88,0xe1,0x00,0x05,0x02,0xf0] + +buffer_atomic_add_x2 v[5:6], off, s[8:11], -4.0 offset:4095 +// CHECK: [0xff,0x0f,0x88,0xe1,0x00,0x05,0x02,0xf7] + buffer_atomic_add_x2 v[5:6], v0, s[8:11], s3 idxen offset:4095 // CHECK: [0xff,0x2f,0x88,0xe1,0x00,0x05,0x02,0x03] @@ -10303,6 +10402,12 @@ buffer_atomic_sub_x2 v[5:6], off, s[8:11], 0 offset:4095 buffer_atomic_sub_x2 v[5:6], off, s[8:11], -1 offset:4095 // CHECK: [0xff,0x0f,0x8c,0xe1,0x00,0x05,0x02,0xc1] +buffer_atomic_sub_x2 v[5:6], off, s[8:11], 0.5 offset:4095 +// CHECK: [0xff,0x0f,0x8c,0xe1,0x00,0x05,0x02,0xf0] + +buffer_atomic_sub_x2 v[5:6], off, s[8:11], -4.0 offset:4095 +// CHECK: [0xff,0x0f,0x8c,0xe1,0x00,0x05,0x02,0xf7] + buffer_atomic_sub_x2 v[5:6], v0, s[8:11], s3 idxen offset:4095 // CHECK: [0xff,0x2f,0x8c,0xe1,0x00,0x05,0x02,0x03] @@ -10348,6 +10453,12 @@ buffer_atomic_smin_x2 v[5:6], off, s[8:11], 0 offset:4095 buffer_atomic_smin_x2 v[5:6], off, s[8:11], -1 offset:4095 // CHECK: [0xff,0x0f,0x90,0xe1,0x00,0x05,0x02,0xc1] +buffer_atomic_smin_x2 v[5:6], off, s[8:11], 0.5 offset:4095 +// CHECK: [0xff,0x0f,0x90,0xe1,0x00,0x05,0x02,0xf0] + +buffer_atomic_smin_x2 v[5:6], off, s[8:11], -4.0 offset:4095 +// CHECK: [0xff,0x0f,0x90,0xe1,0x00,0x05,0x02,0xf7] + buffer_atomic_smin_x2 v[5:6], v0, s[8:11], s3 idxen offset:4095 // CHECK: [0xff,0x2f,0x90,0xe1,0x00,0x05,0x02,0x03] @@ -10393,6 +10504,12 @@ buffer_atomic_umin_x2 v[5:6], off, s[8:11], 0 offset:4095 buffer_atomic_umin_x2 v[5:6], off, s[8:11], -1 offset:4095 // CHECK: [0xff,0x0f,0x94,0xe1,0x00,0x05,0x02,0xc1] +buffer_atomic_umin_x2 v[5:6], off, s[8:11], 0.5 offset:4095 +// CHECK: [0xff,0x0f,0x94,0xe1,0x00,0x05,0x02,0xf0] + +buffer_atomic_umin_x2 v[5:6], off, s[8:11], -4.0 offset:4095 +// CHECK: [0xff,0x0f,0x94,0xe1,0x00,0x05,0x02,0xf7] + buffer_atomic_umin_x2 v[5:6], v0, s[8:11], s3 idxen offset:4095 // CHECK: [0xff,0x2f,0x94,0xe1,0x00,0x05,0x02,0x03] @@ -10438,6 +10555,12 @@ buffer_atomic_smax_x2 v[5:6], off, s[8:11], 0 offset:4095 buffer_atomic_smax_x2 v[5:6], off, s[8:11], -1 offset:4095 // CHECK: [0xff,0x0f,0x98,0xe1,0x00,0x05,0x02,0xc1] +buffer_atomic_smax_x2 v[5:6], off, s[8:11], 0.5 offset:4095 +// CHECK: [0xff,0x0f,0x98,0xe1,0x00,0x05,0x02,0xf0] + +buffer_atomic_smax_x2 v[5:6], off, s[8:11], -4.0 offset:4095 +// CHECK: [0xff,0x0f,0x98,0xe1,0x00,0x05,0x02,0xf7] + buffer_atomic_smax_x2 v[5:6], v0, s[8:11], s3 idxen offset:4095 // CHECK: [0xff,0x2f,0x98,0xe1,0x00,0x05,0x02,0x03] @@ -10483,6 +10606,12 @@ buffer_atomic_umax_x2 v[5:6], off, s[8:11], 0 offset:4095 buffer_atomic_umax_x2 v[5:6], off, s[8:11], -1 offset:4095 // CHECK: [0xff,0x0f,0x9c,0xe1,0x00,0x05,0x02,0xc1] +buffer_atomic_umax_x2 v[5:6], off, s[8:11], 0.5 offset:4095 +// CHECK: [0xff,0x0f,0x9c,0xe1,0x00,0x05,0x02,0xf0] + +buffer_atomic_umax_x2 v[5:6], off, s[8:11], -4.0 offset:4095 +// CHECK: [0xff,0x0f,0x9c,0xe1,0x00,0x05,0x02,0xf7] + buffer_atomic_umax_x2 v[5:6], v0, s[8:11], s3 idxen offset:4095 // CHECK: [0xff,0x2f,0x9c,0xe1,0x00,0x05,0x02,0x03] @@ -10528,6 +10657,12 @@ buffer_atomic_and_x2 v[5:6], off, s[8:11], 0 offset:4095 buffer_atomic_and_x2 v[5:6], off, s[8:11], -1 offset:4095 // CHECK: [0xff,0x0f,0xa0,0xe1,0x00,0x05,0x02,0xc1] +buffer_atomic_and_x2 v[5:6], off, s[8:11], 0.5 offset:4095 +// CHECK: [0xff,0x0f,0xa0,0xe1,0x00,0x05,0x02,0xf0] + +buffer_atomic_and_x2 v[5:6], off, s[8:11], -4.0 offset:4095 +// CHECK: [0xff,0x0f,0xa0,0xe1,0x00,0x05,0x02,0xf7] + buffer_atomic_and_x2 v[5:6], v0, s[8:11], s3 idxen offset:4095 // CHECK: [0xff,0x2f,0xa0,0xe1,0x00,0x05,0x02,0x03] @@ -10573,6 +10708,12 @@ buffer_atomic_or_x2 v[5:6], off, s[8:11], 0 offset:4095 buffer_atomic_or_x2 v[5:6], off, s[8:11], -1 offset:4095 // CHECK: [0xff,0x0f,0xa4,0xe1,0x00,0x05,0x02,0xc1] +buffer_atomic_or_x2 v[5:6], off, s[8:11], 0.5 offset:4095 +// CHECK: [0xff,0x0f,0xa4,0xe1,0x00,0x05,0x02,0xf0] + +buffer_atomic_or_x2 v[5:6], off, s[8:11], -4.0 offset:4095 +// CHECK: [0xff,0x0f,0xa4,0xe1,0x00,0x05,0x02,0xf7] + buffer_atomic_or_x2 v[5:6], v0, s[8:11], s3 idxen offset:4095 // CHECK: [0xff,0x2f,0xa4,0xe1,0x00,0x05,0x02,0x03] @@ -10618,6 +10759,12 @@ buffer_atomic_xor_x2 v[5:6], off, s[8:11], 0 offset:4095 buffer_atomic_xor_x2 v[5:6], off, s[8:11], -1 offset:4095 // CHECK: [0xff,0x0f,0xa8,0xe1,0x00,0x05,0x02,0xc1] +buffer_atomic_xor_x2 v[5:6], off, s[8:11], 0.5 offset:4095 +// CHECK: [0xff,0x0f,0xa8,0xe1,0x00,0x05,0x02,0xf0] + +buffer_atomic_xor_x2 v[5:6], off, s[8:11], -4.0 offset:4095 +// CHECK: [0xff,0x0f,0xa8,0xe1,0x00,0x05,0x02,0xf7] + buffer_atomic_xor_x2 v[5:6], v0, s[8:11], s3 idxen offset:4095 // CHECK: [0xff,0x2f,0xa8,0xe1,0x00,0x05,0x02,0x03] @@ -10663,6 +10810,12 @@ buffer_atomic_inc_x2 v[5:6], off, s[8:11], 0 offset:4095 buffer_atomic_inc_x2 v[5:6], off, s[8:11], -1 offset:4095 // CHECK: [0xff,0x0f,0xac,0xe1,0x00,0x05,0x02,0xc1] +buffer_atomic_inc_x2 v[5:6], off, s[8:11], 0.5 offset:4095 +// CHECK: [0xff,0x0f,0xac,0xe1,0x00,0x05,0x02,0xf0] + +buffer_atomic_inc_x2 v[5:6], off, s[8:11], -4.0 offset:4095 +// CHECK: [0xff,0x0f,0xac,0xe1,0x00,0x05,0x02,0xf7] + buffer_atomic_inc_x2 v[5:6], v0, s[8:11], s3 idxen offset:4095 // CHECK: [0xff,0x2f,0xac,0xe1,0x00,0x05,0x02,0x03] @@ -10708,6 +10861,12 @@ buffer_atomic_dec_x2 v[5:6], off, s[8:11], 0 offset:4095 buffer_atomic_dec_x2 v[5:6], off, s[8:11], -1 offset:4095 // CHECK: [0xff,0x0f,0xb0,0xe1,0x00,0x05,0x02,0xc1] +buffer_atomic_dec_x2 v[5:6], off, s[8:11], 0.5 offset:4095 +// CHECK: [0xff,0x0f,0xb0,0xe1,0x00,0x05,0x02,0xf0] + +buffer_atomic_dec_x2 v[5:6], off, s[8:11], -4.0 offset:4095 +// CHECK: [0xff,0x0f,0xb0,0xe1,0x00,0x05,0x02,0xf7] + buffer_atomic_dec_x2 v[5:6], v0, s[8:11], s3 idxen offset:4095 // CHECK: [0xff,0x2f,0xb0,0xe1,0x00,0x05,0x02,0x03] @@ -50389,6 +50548,165 @@ v_pack_b32_f16 v5, v1, v2 op_sel:[0,0,1] v_pack_b32_f16 v5, v1, v2 op_sel:[1,1,1] // CHECK: [0x05,0x58,0xa0,0xd2,0x01,0x05,0x02,0x00] +v_pk_mad_i16 v5, v1, v2, v3 +// CHECK: [0x05,0x40,0x80,0xd3,0x01,0x05,0x0e,0x1c] + +v_pk_mad_i16 v255, v1, v2, v3 +// CHECK: [0xff,0x40,0x80,0xd3,0x01,0x05,0x0e,0x1c] + +v_pk_mad_i16 v5, v255, v2, v3 +// CHECK: [0x05,0x40,0x80,0xd3,0xff,0x05,0x0e,0x1c] + +v_pk_mad_i16 v5, s1, v2, v3 +// CHECK: [0x05,0x40,0x80,0xd3,0x01,0x04,0x0e,0x1c] + +v_pk_mad_i16 v5, s101, v2, v3 +// CHECK: [0x05,0x40,0x80,0xd3,0x65,0x04,0x0e,0x1c] + +v_pk_mad_i16 v5, flat_scratch_lo, v2, v3 +// CHECK: [0x05,0x40,0x80,0xd3,0x66,0x04,0x0e,0x1c] + +v_pk_mad_i16 v5, flat_scratch_hi, v2, v3 +// CHECK: [0x05,0x40,0x80,0xd3,0x67,0x04,0x0e,0x1c] + +v_pk_mad_i16 v5, vcc_lo, v2, v3 +// CHECK: [0x05,0x40,0x80,0xd3,0x6a,0x04,0x0e,0x1c] + +v_pk_mad_i16 v5, vcc_hi, v2, v3 +// CHECK: [0x05,0x40,0x80,0xd3,0x6b,0x04,0x0e,0x1c] + +v_pk_mad_i16 v5, m0, v2, v3 +// CHECK: [0x05,0x40,0x80,0xd3,0x7c,0x04,0x0e,0x1c] + +v_pk_mad_i16 v5, exec_lo, v2, v3 +// CHECK: [0x05,0x40,0x80,0xd3,0x7e,0x04,0x0e,0x1c] + +v_pk_mad_i16 v5, exec_hi, v2, v3 +// CHECK: [0x05,0x40,0x80,0xd3,0x7f,0x04,0x0e,0x1c] + +v_pk_mad_i16 v5, 0, v2, v3 +// CHECK: [0x05,0x40,0x80,0xd3,0x80,0x04,0x0e,0x1c] + +v_pk_mad_i16 v5, -1, v2, v3 +// CHECK: [0x05,0x40,0x80,0xd3,0xc1,0x04,0x0e,0x1c] + +v_pk_mad_i16 v5, 0.5, v2, v3 +// CHECK: [0x05,0x40,0x80,0xd3,0xf0,0x04,0x0e,0x1c] + +v_pk_mad_i16 v5, -4.0, v2, v3 +// CHECK: [0x05,0x40,0x80,0xd3,0xf7,0x04,0x0e,0x1c] + +v_pk_mad_i16 v5, v1, v255, v3 +// CHECK: [0x05,0x40,0x80,0xd3,0x01,0xff,0x0f,0x1c] + +v_pk_mad_i16 v5, v1, s2, v3 +// CHECK: [0x05,0x40,0x80,0xd3,0x01,0x05,0x0c,0x1c] + +v_pk_mad_i16 v5, v1, s101, v3 +// CHECK: [0x05,0x40,0x80,0xd3,0x01,0xcb,0x0c,0x1c] + +v_pk_mad_i16 v5, v1, flat_scratch_lo, v3 +// CHECK: [0x05,0x40,0x80,0xd3,0x01,0xcd,0x0c,0x1c] + +v_pk_mad_i16 v5, v1, flat_scratch_hi, v3 +// CHECK: [0x05,0x40,0x80,0xd3,0x01,0xcf,0x0c,0x1c] + +v_pk_mad_i16 v5, v1, vcc_lo, v3 +// CHECK: [0x05,0x40,0x80,0xd3,0x01,0xd5,0x0c,0x1c] + +v_pk_mad_i16 v5, v1, vcc_hi, v3 +// CHECK: [0x05,0x40,0x80,0xd3,0x01,0xd7,0x0c,0x1c] + +v_pk_mad_i16 v5, v1, m0, v3 +// CHECK: [0x05,0x40,0x80,0xd3,0x01,0xf9,0x0c,0x1c] + +v_pk_mad_i16 v5, v1, exec_lo, v3 +// CHECK: [0x05,0x40,0x80,0xd3,0x01,0xfd,0x0c,0x1c] + +v_pk_mad_i16 v5, v1, exec_hi, v3 +// CHECK: [0x05,0x40,0x80,0xd3,0x01,0xff,0x0c,0x1c] + +v_pk_mad_i16 v5, v1, 0, v3 +// CHECK: [0x05,0x40,0x80,0xd3,0x01,0x01,0x0d,0x1c] + +v_pk_mad_i16 v5, v1, -1, v3 +// CHECK: [0x05,0x40,0x80,0xd3,0x01,0x83,0x0d,0x1c] + +v_pk_mad_i16 v5, v1, 0.5, v3 +// CHECK: [0x05,0x40,0x80,0xd3,0x01,0xe1,0x0d,0x1c] + +v_pk_mad_i16 v5, v1, -4.0, v3 +// CHECK: [0x05,0x40,0x80,0xd3,0x01,0xef,0x0d,0x1c] + +v_pk_mad_i16 v5, v1, v2, v255 +// CHECK: [0x05,0x40,0x80,0xd3,0x01,0x05,0xfe,0x1f] + +v_pk_mad_i16 v5, v1, v2, s3 +// CHECK: [0x05,0x40,0x80,0xd3,0x01,0x05,0x0e,0x18] + +v_pk_mad_i16 v5, v1, v2, s101 +// CHECK: [0x05,0x40,0x80,0xd3,0x01,0x05,0x96,0x19] + +v_pk_mad_i16 v5, v1, v2, flat_scratch_lo +// CHECK: [0x05,0x40,0x80,0xd3,0x01,0x05,0x9a,0x19] + +v_pk_mad_i16 v5, v1, v2, flat_scratch_hi +// CHECK: [0x05,0x40,0x80,0xd3,0x01,0x05,0x9e,0x19] + +v_pk_mad_i16 v5, v1, v2, vcc_lo +// CHECK: [0x05,0x40,0x80,0xd3,0x01,0x05,0xaa,0x19] + +v_pk_mad_i16 v5, v1, v2, vcc_hi +// CHECK: [0x05,0x40,0x80,0xd3,0x01,0x05,0xae,0x19] + +v_pk_mad_i16 v5, v1, v2, m0 +// CHECK: [0x05,0x40,0x80,0xd3,0x01,0x05,0xf2,0x19] + +v_pk_mad_i16 v5, v1, v2, exec_lo +// CHECK: [0x05,0x40,0x80,0xd3,0x01,0x05,0xfa,0x19] + +v_pk_mad_i16 v5, v1, v2, exec_hi +// CHECK: [0x05,0x40,0x80,0xd3,0x01,0x05,0xfe,0x19] + +v_pk_mad_i16 v5, v1, v2, 0 +// CHECK: [0x05,0x40,0x80,0xd3,0x01,0x05,0x02,0x1a] + +v_pk_mad_i16 v5, v1, v2, -1 +// CHECK: [0x05,0x40,0x80,0xd3,0x01,0x05,0x06,0x1b] + +v_pk_mad_i16 v5, v1, v2, 0.5 +// CHECK: [0x05,0x40,0x80,0xd3,0x01,0x05,0xc2,0x1b] + +v_pk_mad_i16 v5, v1, v2, -4.0 +// CHECK: [0x05,0x40,0x80,0xd3,0x01,0x05,0xde,0x1b] + +v_pk_mad_i16 v5, v1, v2, v3 op_sel:[1,0,0] +// CHECK: [0x05,0x48,0x80,0xd3,0x01,0x05,0x0e,0x1c] + +v_pk_mad_i16 v5, v1, v2, v3 op_sel:[0,1,0] +// CHECK: [0x05,0x50,0x80,0xd3,0x01,0x05,0x0e,0x1c] + +v_pk_mad_i16 v5, v1, v2, v3 op_sel:[0,0,1] +// CHECK: [0x05,0x60,0x80,0xd3,0x01,0x05,0x0e,0x1c] + +v_pk_mad_i16 v5, v1, v2, v3 op_sel:[1,1,1] +// CHECK: [0x05,0x78,0x80,0xd3,0x01,0x05,0x0e,0x1c] + +v_pk_mad_i16 v5, v1, v2, v3 op_sel_hi:[0,0,0] +// CHECK: [0x05,0x00,0x80,0xd3,0x01,0x05,0x0e,0x04] + +v_pk_mad_i16 v5, v1, v2, v3 op_sel_hi:[1,0,0] +// CHECK: [0x05,0x00,0x80,0xd3,0x01,0x05,0x0e,0x0c] + +v_pk_mad_i16 v5, v1, v2, v3 op_sel_hi:[0,1,0] +// CHECK: [0x05,0x00,0x80,0xd3,0x01,0x05,0x0e,0x14] + +v_pk_mad_i16 v5, v1, v2, v3 op_sel_hi:[0,0,1] +// CHECK: [0x05,0x40,0x80,0xd3,0x01,0x05,0x0e,0x04] + +v_pk_mad_i16 v5, v1, v2, v3 clamp +// CHECK: [0x05,0xc0,0x80,0xd3,0x01,0x05,0x0e,0x1c] + v_pk_mul_lo_u16 v5, v1, v2 // CHECK: [0x05,0x00,0x81,0xd3,0x01,0x05,0x02,0x18] @@ -50425,6 +50743,18 @@ v_pk_mul_lo_u16 v5, exec_lo, v2 v_pk_mul_lo_u16 v5, exec_hi, v2 // CHECK: [0x05,0x00,0x81,0xd3,0x7f,0x04,0x02,0x18] +v_pk_mul_lo_u16 v5, 0, v2 +// CHECK: [0x05,0x00,0x81,0xd3,0x80,0x04,0x02,0x18] + +v_pk_mul_lo_u16 v5, -1, v2 +// CHECK: [0x05,0x00,0x81,0xd3,0xc1,0x04,0x02,0x18] + +v_pk_mul_lo_u16 v5, 0.5, v2 +// CHECK: [0x05,0x00,0x81,0xd3,0xf0,0x04,0x02,0x18] + +v_pk_mul_lo_u16 v5, -4.0, v2 +// CHECK: [0x05,0x00,0x81,0xd3,0xf7,0x04,0x02,0x18] + v_pk_mul_lo_u16 v5, v1, v255 // CHECK: [0x05,0x00,0x81,0xd3,0x01,0xff,0x03,0x18] @@ -50458,6 +50788,18 @@ v_pk_mul_lo_u16 v5, v1, exec_hi v_pk_mul_lo_u16 v5, v1, v2 op_sel:[0,0] // CHECK: [0x05,0x00,0x81,0xd3,0x01,0x05,0x02,0x18] +v_pk_mul_lo_u16 v5, v1, 0 +// CHECK: [0x05,0x00,0x81,0xd3,0x01,0x01,0x01,0x18] + +v_pk_mul_lo_u16 v5, v1, -1 +// CHECK: [0x05,0x00,0x81,0xd3,0x01,0x83,0x01,0x18] + +v_pk_mul_lo_u16 v5, v1, 0.5 +// CHECK: [0x05,0x00,0x81,0xd3,0x01,0xe1,0x01,0x18] + +v_pk_mul_lo_u16 v5, v1, -4.0 +// CHECK: [0x05,0x00,0x81,0xd3,0x01,0xef,0x01,0x18] + v_pk_mul_lo_u16 v5, v1, v2 op_sel:[1,0] // CHECK: [0x05,0x08,0x81,0xd3,0x01,0x05,0x02,0x18] @@ -50515,6 +50857,18 @@ v_pk_add_i16 v5, exec_lo, v2 v_pk_add_i16 v5, exec_hi, v2 // CHECK: [0x05,0x00,0x82,0xd3,0x7f,0x04,0x02,0x18] +v_pk_add_i16 v5, 0, v2 +// CHECK: [0x05,0x00,0x82,0xd3,0x80,0x04,0x02,0x18] + +v_pk_add_i16 v5, -1, v2 +// CHECK: [0x05,0x00,0x82,0xd3,0xc1,0x04,0x02,0x18] + +v_pk_add_i16 v5, 0.5, v2 +// CHECK: [0x05,0x00,0x82,0xd3,0xf0,0x04,0x02,0x18] + +v_pk_add_i16 v5, -4.0, v2 +// CHECK: [0x05,0x00,0x82,0xd3,0xf7,0x04,0x02,0x18] + v_pk_add_i16 v5, v1, v255 // CHECK: [0x05,0x00,0x82,0xd3,0x01,0xff,0x03,0x18] @@ -50548,6 +50902,18 @@ v_pk_add_i16 v5, v1, exec_hi v_pk_add_i16 v5, v1, v2 op_sel:[0,0] // CHECK: [0x05,0x00,0x82,0xd3,0x01,0x05,0x02,0x18] +v_pk_add_i16 v5, v1, 0 +// CHECK: [0x05,0x00,0x82,0xd3,0x01,0x01,0x01,0x18] + +v_pk_add_i16 v5, v1, -1 +// CHECK: [0x05,0x00,0x82,0xd3,0x01,0x83,0x01,0x18] + +v_pk_add_i16 v5, v1, 0.5 +// CHECK: [0x05,0x00,0x82,0xd3,0x01,0xe1,0x01,0x18] + +v_pk_add_i16 v5, v1, -4.0 +// CHECK: [0x05,0x00,0x82,0xd3,0x01,0xef,0x01,0x18] + v_pk_add_i16 v5, v1, v2 op_sel:[1,0] // CHECK: [0x05,0x08,0x82,0xd3,0x01,0x05,0x02,0x18] @@ -50608,6 +50974,18 @@ v_pk_sub_i16 v5, exec_lo, v2 v_pk_sub_i16 v5, exec_hi, v2 // CHECK: [0x05,0x00,0x83,0xd3,0x7f,0x04,0x02,0x18] +v_pk_sub_i16 v5, 0, v2 +// CHECK: [0x05,0x00,0x83,0xd3,0x80,0x04,0x02,0x18] + +v_pk_sub_i16 v5, -1, v2 +// CHECK: [0x05,0x00,0x83,0xd3,0xc1,0x04,0x02,0x18] + +v_pk_sub_i16 v5, 0.5, v2 +// CHECK: [0x05,0x00,0x83,0xd3,0xf0,0x04,0x02,0x18] + +v_pk_sub_i16 v5, -4.0, v2 +// CHECK: [0x05,0x00,0x83,0xd3,0xf7,0x04,0x02,0x18] + v_pk_sub_i16 v5, v1, v255 // CHECK: [0x05,0x00,0x83,0xd3,0x01,0xff,0x03,0x18] @@ -50641,6 +51019,18 @@ v_pk_sub_i16 v5, v1, exec_hi v_pk_sub_i16 v5, v1, v2 op_sel:[0,0] // CHECK: [0x05,0x00,0x83,0xd3,0x01,0x05,0x02,0x18] +v_pk_sub_i16 v5, v1, 0 +// CHECK: [0x05,0x00,0x83,0xd3,0x01,0x01,0x01,0x18] + +v_pk_sub_i16 v5, v1, -1 +// CHECK: [0x05,0x00,0x83,0xd3,0x01,0x83,0x01,0x18] + +v_pk_sub_i16 v5, v1, 0.5 +// CHECK: [0x05,0x00,0x83,0xd3,0x01,0xe1,0x01,0x18] + +v_pk_sub_i16 v5, v1, -4.0 +// CHECK: [0x05,0x00,0x83,0xd3,0x01,0xef,0x01,0x18] + v_pk_sub_i16 v5, v1, v2 op_sel:[1,0] // CHECK: [0x05,0x08,0x83,0xd3,0x01,0x05,0x02,0x18] @@ -50701,6 +51091,18 @@ v_pk_lshlrev_b16 v5, exec_lo, v2 v_pk_lshlrev_b16 v5, exec_hi, v2 // CHECK: [0x05,0x00,0x84,0xd3,0x7f,0x04,0x02,0x18] +v_pk_lshlrev_b16 v5, 0, v2 +// CHECK: [0x05,0x00,0x84,0xd3,0x80,0x04,0x02,0x18] + +v_pk_lshlrev_b16 v5, -1, v2 +// CHECK: [0x05,0x00,0x84,0xd3,0xc1,0x04,0x02,0x18] + +v_pk_lshlrev_b16 v5, 0.5, v2 +// CHECK: [0x05,0x00,0x84,0xd3,0xf0,0x04,0x02,0x18] + +v_pk_lshlrev_b16 v5, -4.0, v2 +// CHECK: [0x05,0x00,0x84,0xd3,0xf7,0x04,0x02,0x18] + v_pk_lshlrev_b16 v5, v1, v255 // CHECK: [0x05,0x00,0x84,0xd3,0x01,0xff,0x03,0x18] @@ -50734,6 +51136,18 @@ v_pk_lshlrev_b16 v5, v1, exec_hi v_pk_lshlrev_b16 v5, v1, v2 op_sel:[0,0] // CHECK: [0x05,0x00,0x84,0xd3,0x01,0x05,0x02,0x18] +v_pk_lshlrev_b16 v5, v1, 0 +// CHECK: [0x05,0x00,0x84,0xd3,0x01,0x01,0x01,0x18] + +v_pk_lshlrev_b16 v5, v1, -1 +// CHECK: [0x05,0x00,0x84,0xd3,0x01,0x83,0x01,0x18] + +v_pk_lshlrev_b16 v5, v1, 0.5 +// CHECK: [0x05,0x00,0x84,0xd3,0x01,0xe1,0x01,0x18] + +v_pk_lshlrev_b16 v5, v1, -4.0 +// CHECK: [0x05,0x00,0x84,0xd3,0x01,0xef,0x01,0x18] + v_pk_lshlrev_b16 v5, v1, v2 op_sel:[1,0] // CHECK: [0x05,0x08,0x84,0xd3,0x01,0x05,0x02,0x18] @@ -50791,6 +51205,18 @@ v_pk_lshrrev_b16 v5, exec_lo, v2 v_pk_lshrrev_b16 v5, exec_hi, v2 // CHECK: [0x05,0x00,0x85,0xd3,0x7f,0x04,0x02,0x18] +v_pk_lshrrev_b16 v5, 0, v2 +// CHECK: [0x05,0x00,0x85,0xd3,0x80,0x04,0x02,0x18] + +v_pk_lshrrev_b16 v5, -1, v2 +// CHECK: [0x05,0x00,0x85,0xd3,0xc1,0x04,0x02,0x18] + +v_pk_lshrrev_b16 v5, 0.5, v2 +// CHECK: [0x05,0x00,0x85,0xd3,0xf0,0x04,0x02,0x18] + +v_pk_lshrrev_b16 v5, -4.0, v2 +// CHECK: [0x05,0x00,0x85,0xd3,0xf7,0x04,0x02,0x18] + v_pk_lshrrev_b16 v5, v1, v255 // CHECK: [0x05,0x00,0x85,0xd3,0x01,0xff,0x03,0x18] @@ -50824,6 +51250,18 @@ v_pk_lshrrev_b16 v5, v1, exec_hi v_pk_lshrrev_b16 v5, v1, v2 op_sel:[0,0] // CHECK: [0x05,0x00,0x85,0xd3,0x01,0x05,0x02,0x18] +v_pk_lshrrev_b16 v5, v1, 0 +// CHECK: [0x05,0x00,0x85,0xd3,0x01,0x01,0x01,0x18] + +v_pk_lshrrev_b16 v5, v1, -1 +// CHECK: [0x05,0x00,0x85,0xd3,0x01,0x83,0x01,0x18] + +v_pk_lshrrev_b16 v5, v1, 0.5 +// CHECK: [0x05,0x00,0x85,0xd3,0x01,0xe1,0x01,0x18] + +v_pk_lshrrev_b16 v5, v1, -4.0 +// CHECK: [0x05,0x00,0x85,0xd3,0x01,0xef,0x01,0x18] + v_pk_lshrrev_b16 v5, v1, v2 op_sel:[1,0] // CHECK: [0x05,0x08,0x85,0xd3,0x01,0x05,0x02,0x18] @@ -50881,6 +51319,18 @@ v_pk_ashrrev_i16 v5, exec_lo, v2 v_pk_ashrrev_i16 v5, exec_hi, v2 // CHECK: [0x05,0x00,0x86,0xd3,0x7f,0x04,0x02,0x18] +v_pk_ashrrev_i16 v5, 0, v2 +// CHECK: [0x05,0x00,0x86,0xd3,0x80,0x04,0x02,0x18] + +v_pk_ashrrev_i16 v5, -1, v2 +// CHECK: [0x05,0x00,0x86,0xd3,0xc1,0x04,0x02,0x18] + +v_pk_ashrrev_i16 v5, 0.5, v2 +// CHECK: [0x05,0x00,0x86,0xd3,0xf0,0x04,0x02,0x18] + +v_pk_ashrrev_i16 v5, -4.0, v2 +// CHECK: [0x05,0x00,0x86,0xd3,0xf7,0x04,0x02,0x18] + v_pk_ashrrev_i16 v5, v1, v255 // CHECK: [0x05,0x00,0x86,0xd3,0x01,0xff,0x03,0x18] @@ -50914,6 +51364,18 @@ v_pk_ashrrev_i16 v5, v1, exec_hi v_pk_ashrrev_i16 v5, v1, v2 op_sel:[0,0] // CHECK: [0x05,0x00,0x86,0xd3,0x01,0x05,0x02,0x18] +v_pk_ashrrev_i16 v5, v1, 0 +// CHECK: [0x05,0x00,0x86,0xd3,0x01,0x01,0x01,0x18] + +v_pk_ashrrev_i16 v5, v1, -1 +// CHECK: [0x05,0x00,0x86,0xd3,0x01,0x83,0x01,0x18] + +v_pk_ashrrev_i16 v5, v1, 0.5 +// CHECK: [0x05,0x00,0x86,0xd3,0x01,0xe1,0x01,0x18] + +v_pk_ashrrev_i16 v5, v1, -4.0 +// CHECK: [0x05,0x00,0x86,0xd3,0x01,0xef,0x01,0x18] + v_pk_ashrrev_i16 v5, v1, v2 op_sel:[1,0] // CHECK: [0x05,0x08,0x86,0xd3,0x01,0x05,0x02,0x18] @@ -50971,6 +51433,18 @@ v_pk_max_i16 v5, exec_lo, v2 v_pk_max_i16 v5, exec_hi, v2 // CHECK: [0x05,0x00,0x87,0xd3,0x7f,0x04,0x02,0x18] +v_pk_max_i16 v5, 0, v2 +// CHECK: [0x05,0x00,0x87,0xd3,0x80,0x04,0x02,0x18] + +v_pk_max_i16 v5, -1, v2 +// CHECK: [0x05,0x00,0x87,0xd3,0xc1,0x04,0x02,0x18] + +v_pk_max_i16 v5, 0.5, v2 +// CHECK: [0x05,0x00,0x87,0xd3,0xf0,0x04,0x02,0x18] + +v_pk_max_i16 v5, -4.0, v2 +// CHECK: [0x05,0x00,0x87,0xd3,0xf7,0x04,0x02,0x18] + v_pk_max_i16 v5, v1, v255 // CHECK: [0x05,0x00,0x87,0xd3,0x01,0xff,0x03,0x18] @@ -51004,6 +51478,18 @@ v_pk_max_i16 v5, v1, exec_hi v_pk_max_i16 v5, v1, v2 op_sel:[0,0] // CHECK: [0x05,0x00,0x87,0xd3,0x01,0x05,0x02,0x18] +v_pk_max_i16 v5, v1, 0 +// CHECK: [0x05,0x00,0x87,0xd3,0x01,0x01,0x01,0x18] + +v_pk_max_i16 v5, v1, -1 +// CHECK: [0x05,0x00,0x87,0xd3,0x01,0x83,0x01,0x18] + +v_pk_max_i16 v5, v1, 0.5 +// CHECK: [0x05,0x00,0x87,0xd3,0x01,0xe1,0x01,0x18] + +v_pk_max_i16 v5, v1, -4.0 +// CHECK: [0x05,0x00,0x87,0xd3,0x01,0xef,0x01,0x18] + v_pk_max_i16 v5, v1, v2 op_sel:[1,0] // CHECK: [0x05,0x08,0x87,0xd3,0x01,0x05,0x02,0x18] @@ -51061,6 +51547,18 @@ v_pk_min_i16 v5, exec_lo, v2 v_pk_min_i16 v5, exec_hi, v2 // CHECK: [0x05,0x00,0x88,0xd3,0x7f,0x04,0x02,0x18] +v_pk_min_i16 v5, 0, v2 +// CHECK: [0x05,0x00,0x88,0xd3,0x80,0x04,0x02,0x18] + +v_pk_min_i16 v5, -1, v2 +// CHECK: [0x05,0x00,0x88,0xd3,0xc1,0x04,0x02,0x18] + +v_pk_min_i16 v5, 0.5, v2 +// CHECK: [0x05,0x00,0x88,0xd3,0xf0,0x04,0x02,0x18] + +v_pk_min_i16 v5, -4.0, v2 +// CHECK: [0x05,0x00,0x88,0xd3,0xf7,0x04,0x02,0x18] + v_pk_min_i16 v5, v1, v255 // CHECK: [0x05,0x00,0x88,0xd3,0x01,0xff,0x03,0x18] @@ -51094,6 +51592,18 @@ v_pk_min_i16 v5, v1, exec_hi v_pk_min_i16 v5, v1, v2 op_sel:[0,0] // CHECK: [0x05,0x00,0x88,0xd3,0x01,0x05,0x02,0x18] +v_pk_min_i16 v5, v1, 0 +// CHECK: [0x05,0x00,0x88,0xd3,0x01,0x01,0x01,0x18] + +v_pk_min_i16 v5, v1, -1 +// CHECK: [0x05,0x00,0x88,0xd3,0x01,0x83,0x01,0x18] + +v_pk_min_i16 v5, v1, 0.5 +// CHECK: [0x05,0x00,0x88,0xd3,0x01,0xe1,0x01,0x18] + +v_pk_min_i16 v5, v1, -4.0 +// CHECK: [0x05,0x00,0x88,0xd3,0x01,0xef,0x01,0x18] + v_pk_min_i16 v5, v1, v2 op_sel:[1,0] // CHECK: [0x05,0x08,0x88,0xd3,0x01,0x05,0x02,0x18] @@ -51115,6 +51625,165 @@ v_pk_min_i16 v5, v1, v2 op_sel_hi:[1,0] v_pk_min_i16 v5, v1, v2 op_sel_hi:[0,1] // CHECK: [0x05,0x00,0x88,0xd3,0x01,0x05,0x02,0x10] +v_pk_mad_u16 v5, v1, v2, v3 +// CHECK: [0x05,0x40,0x89,0xd3,0x01,0x05,0x0e,0x1c] + +v_pk_mad_u16 v255, v1, v2, v3 +// CHECK: [0xff,0x40,0x89,0xd3,0x01,0x05,0x0e,0x1c] + +v_pk_mad_u16 v5, v255, v2, v3 +// CHECK: [0x05,0x40,0x89,0xd3,0xff,0x05,0x0e,0x1c] + +v_pk_mad_u16 v5, s1, v2, v3 +// CHECK: [0x05,0x40,0x89,0xd3,0x01,0x04,0x0e,0x1c] + +v_pk_mad_u16 v5, s101, v2, v3 +// CHECK: [0x05,0x40,0x89,0xd3,0x65,0x04,0x0e,0x1c] + +v_pk_mad_u16 v5, flat_scratch_lo, v2, v3 +// CHECK: [0x05,0x40,0x89,0xd3,0x66,0x04,0x0e,0x1c] + +v_pk_mad_u16 v5, flat_scratch_hi, v2, v3 +// CHECK: [0x05,0x40,0x89,0xd3,0x67,0x04,0x0e,0x1c] + +v_pk_mad_u16 v5, vcc_lo, v2, v3 +// CHECK: [0x05,0x40,0x89,0xd3,0x6a,0x04,0x0e,0x1c] + +v_pk_mad_u16 v5, vcc_hi, v2, v3 +// CHECK: [0x05,0x40,0x89,0xd3,0x6b,0x04,0x0e,0x1c] + +v_pk_mad_u16 v5, m0, v2, v3 +// CHECK: [0x05,0x40,0x89,0xd3,0x7c,0x04,0x0e,0x1c] + +v_pk_mad_u16 v5, exec_lo, v2, v3 +// CHECK: [0x05,0x40,0x89,0xd3,0x7e,0x04,0x0e,0x1c] + +v_pk_mad_u16 v5, exec_hi, v2, v3 +// CHECK: [0x05,0x40,0x89,0xd3,0x7f,0x04,0x0e,0x1c] + +v_pk_mad_u16 v5, 0, v2, v3 +// CHECK: [0x05,0x40,0x89,0xd3,0x80,0x04,0x0e,0x1c] + +v_pk_mad_u16 v5, -1, v2, v3 +// CHECK: [0x05,0x40,0x89,0xd3,0xc1,0x04,0x0e,0x1c] + +v_pk_mad_u16 v5, 0.5, v2, v3 +// CHECK: [0x05,0x40,0x89,0xd3,0xf0,0x04,0x0e,0x1c] + +v_pk_mad_u16 v5, -4.0, v2, v3 +// CHECK: [0x05,0x40,0x89,0xd3,0xf7,0x04,0x0e,0x1c] + +v_pk_mad_u16 v5, v1, v255, v3 +// CHECK: [0x05,0x40,0x89,0xd3,0x01,0xff,0x0f,0x1c] + +v_pk_mad_u16 v5, v1, s2, v3 +// CHECK: [0x05,0x40,0x89,0xd3,0x01,0x05,0x0c,0x1c] + +v_pk_mad_u16 v5, v1, s101, v3 +// CHECK: [0x05,0x40,0x89,0xd3,0x01,0xcb,0x0c,0x1c] + +v_pk_mad_u16 v5, v1, flat_scratch_lo, v3 +// CHECK: [0x05,0x40,0x89,0xd3,0x01,0xcd,0x0c,0x1c] + +v_pk_mad_u16 v5, v1, flat_scratch_hi, v3 +// CHECK: [0x05,0x40,0x89,0xd3,0x01,0xcf,0x0c,0x1c] + +v_pk_mad_u16 v5, v1, vcc_lo, v3 +// CHECK: [0x05,0x40,0x89,0xd3,0x01,0xd5,0x0c,0x1c] + +v_pk_mad_u16 v5, v1, vcc_hi, v3 +// CHECK: [0x05,0x40,0x89,0xd3,0x01,0xd7,0x0c,0x1c] + +v_pk_mad_u16 v5, v1, m0, v3 +// CHECK: [0x05,0x40,0x89,0xd3,0x01,0xf9,0x0c,0x1c] + +v_pk_mad_u16 v5, v1, exec_lo, v3 +// CHECK: [0x05,0x40,0x89,0xd3,0x01,0xfd,0x0c,0x1c] + +v_pk_mad_u16 v5, v1, exec_hi, v3 +// CHECK: [0x05,0x40,0x89,0xd3,0x01,0xff,0x0c,0x1c] + +v_pk_mad_u16 v5, v1, 0, v3 +// CHECK: [0x05,0x40,0x89,0xd3,0x01,0x01,0x0d,0x1c] + +v_pk_mad_u16 v5, v1, -1, v3 +// CHECK: [0x05,0x40,0x89,0xd3,0x01,0x83,0x0d,0x1c] + +v_pk_mad_u16 v5, v1, 0.5, v3 +// CHECK: [0x05,0x40,0x89,0xd3,0x01,0xe1,0x0d,0x1c] + +v_pk_mad_u16 v5, v1, -4.0, v3 +// CHECK: [0x05,0x40,0x89,0xd3,0x01,0xef,0x0d,0x1c] + +v_pk_mad_u16 v5, v1, v2, v255 +// CHECK: [0x05,0x40,0x89,0xd3,0x01,0x05,0xfe,0x1f] + +v_pk_mad_u16 v5, v1, v2, s3 +// CHECK: [0x05,0x40,0x89,0xd3,0x01,0x05,0x0e,0x18] + +v_pk_mad_u16 v5, v1, v2, s101 +// CHECK: [0x05,0x40,0x89,0xd3,0x01,0x05,0x96,0x19] + +v_pk_mad_u16 v5, v1, v2, flat_scratch_lo +// CHECK: [0x05,0x40,0x89,0xd3,0x01,0x05,0x9a,0x19] + +v_pk_mad_u16 v5, v1, v2, flat_scratch_hi +// CHECK: [0x05,0x40,0x89,0xd3,0x01,0x05,0x9e,0x19] + +v_pk_mad_u16 v5, v1, v2, vcc_lo +// CHECK: [0x05,0x40,0x89,0xd3,0x01,0x05,0xaa,0x19] + +v_pk_mad_u16 v5, v1, v2, vcc_hi +// CHECK: [0x05,0x40,0x89,0xd3,0x01,0x05,0xae,0x19] + +v_pk_mad_u16 v5, v1, v2, m0 +// CHECK: [0x05,0x40,0x89,0xd3,0x01,0x05,0xf2,0x19] + +v_pk_mad_u16 v5, v1, v2, exec_lo +// CHECK: [0x05,0x40,0x89,0xd3,0x01,0x05,0xfa,0x19] + +v_pk_mad_u16 v5, v1, v2, exec_hi +// CHECK: [0x05,0x40,0x89,0xd3,0x01,0x05,0xfe,0x19] + +v_pk_mad_u16 v5, v1, v2, 0 +// CHECK: [0x05,0x40,0x89,0xd3,0x01,0x05,0x02,0x1a] + +v_pk_mad_u16 v5, v1, v2, -1 +// CHECK: [0x05,0x40,0x89,0xd3,0x01,0x05,0x06,0x1b] + +v_pk_mad_u16 v5, v1, v2, 0.5 +// CHECK: [0x05,0x40,0x89,0xd3,0x01,0x05,0xc2,0x1b] + +v_pk_mad_u16 v5, v1, v2, -4.0 +// CHECK: [0x05,0x40,0x89,0xd3,0x01,0x05,0xde,0x1b] + +v_pk_mad_u16 v5, v1, v2, v3 op_sel:[1,0,0] +// CHECK: [0x05,0x48,0x89,0xd3,0x01,0x05,0x0e,0x1c] + +v_pk_mad_u16 v5, v1, v2, v3 op_sel:[0,1,0] +// CHECK: [0x05,0x50,0x89,0xd3,0x01,0x05,0x0e,0x1c] + +v_pk_mad_u16 v5, v1, v2, v3 op_sel:[0,0,1] +// CHECK: [0x05,0x60,0x89,0xd3,0x01,0x05,0x0e,0x1c] + +v_pk_mad_u16 v5, v1, v2, v3 op_sel:[1,1,1] +// CHECK: [0x05,0x78,0x89,0xd3,0x01,0x05,0x0e,0x1c] + +v_pk_mad_u16 v5, v1, v2, v3 op_sel_hi:[0,0,0] +// CHECK: [0x05,0x00,0x89,0xd3,0x01,0x05,0x0e,0x04] + +v_pk_mad_u16 v5, v1, v2, v3 op_sel_hi:[1,0,0] +// CHECK: [0x05,0x00,0x89,0xd3,0x01,0x05,0x0e,0x0c] + +v_pk_mad_u16 v5, v1, v2, v3 op_sel_hi:[0,1,0] +// CHECK: [0x05,0x00,0x89,0xd3,0x01,0x05,0x0e,0x14] + +v_pk_mad_u16 v5, v1, v2, v3 op_sel_hi:[0,0,1] +// CHECK: [0x05,0x40,0x89,0xd3,0x01,0x05,0x0e,0x04] + +v_pk_mad_u16 v5, v1, v2, v3 clamp +// CHECK: [0x05,0xc0,0x89,0xd3,0x01,0x05,0x0e,0x1c] + v_pk_add_u16 v5, v1, v2 // CHECK: [0x05,0x00,0x8a,0xd3,0x01,0x05,0x02,0x18] @@ -51151,6 +51820,18 @@ v_pk_add_u16 v5, exec_lo, v2 v_pk_add_u16 v5, exec_hi, v2 // CHECK: [0x05,0x00,0x8a,0xd3,0x7f,0x04,0x02,0x18] +v_pk_add_u16 v5, 0, v2 +// CHECK: [0x05,0x00,0x8a,0xd3,0x80,0x04,0x02,0x18] + +v_pk_add_u16 v5, -1, v2 +// CHECK: [0x05,0x00,0x8a,0xd3,0xc1,0x04,0x02,0x18] + +v_pk_add_u16 v5, 0.5, v2 +// CHECK: [0x05,0x00,0x8a,0xd3,0xf0,0x04,0x02,0x18] + +v_pk_add_u16 v5, -4.0, v2 +// CHECK: [0x05,0x00,0x8a,0xd3,0xf7,0x04,0x02,0x18] + v_pk_add_u16 v5, v1, v255 // CHECK: [0x05,0x00,0x8a,0xd3,0x01,0xff,0x03,0x18] @@ -51184,6 +51865,18 @@ v_pk_add_u16 v5, v1, exec_hi v_pk_add_u16 v5, v1, v2 op_sel:[0,0] // CHECK: [0x05,0x00,0x8a,0xd3,0x01,0x05,0x02,0x18] +v_pk_add_u16 v5, v1, 0 +// CHECK: [0x05,0x00,0x8a,0xd3,0x01,0x01,0x01,0x18] + +v_pk_add_u16 v5, v1, -1 +// CHECK: [0x05,0x00,0x8a,0xd3,0x01,0x83,0x01,0x18] + +v_pk_add_u16 v5, v1, 0.5 +// CHECK: [0x05,0x00,0x8a,0xd3,0x01,0xe1,0x01,0x18] + +v_pk_add_u16 v5, v1, -4.0 +// CHECK: [0x05,0x00,0x8a,0xd3,0x01,0xef,0x01,0x18] + v_pk_add_u16 v5, v1, v2 op_sel:[1,0] // CHECK: [0x05,0x08,0x8a,0xd3,0x01,0x05,0x02,0x18] @@ -51244,6 +51937,18 @@ v_pk_sub_u16 v5, exec_lo, v2 v_pk_sub_u16 v5, exec_hi, v2 // CHECK: [0x05,0x00,0x8b,0xd3,0x7f,0x04,0x02,0x18] +v_pk_sub_u16 v5, 0, v2 +// CHECK: [0x05,0x00,0x8b,0xd3,0x80,0x04,0x02,0x18] + +v_pk_sub_u16 v5, -1, v2 +// CHECK: [0x05,0x00,0x8b,0xd3,0xc1,0x04,0x02,0x18] + +v_pk_sub_u16 v5, 0.5, v2 +// CHECK: [0x05,0x00,0x8b,0xd3,0xf0,0x04,0x02,0x18] + +v_pk_sub_u16 v5, -4.0, v2 +// CHECK: [0x05,0x00,0x8b,0xd3,0xf7,0x04,0x02,0x18] + v_pk_sub_u16 v5, v1, v255 // CHECK: [0x05,0x00,0x8b,0xd3,0x01,0xff,0x03,0x18] @@ -51277,6 +51982,18 @@ v_pk_sub_u16 v5, v1, exec_hi v_pk_sub_u16 v5, v1, v2 op_sel:[0,0] // CHECK: [0x05,0x00,0x8b,0xd3,0x01,0x05,0x02,0x18] +v_pk_sub_u16 v5, v1, 0 +// CHECK: [0x05,0x00,0x8b,0xd3,0x01,0x01,0x01,0x18] + +v_pk_sub_u16 v5, v1, -1 +// CHECK: [0x05,0x00,0x8b,0xd3,0x01,0x83,0x01,0x18] + +v_pk_sub_u16 v5, v1, 0.5 +// CHECK: [0x05,0x00,0x8b,0xd3,0x01,0xe1,0x01,0x18] + +v_pk_sub_u16 v5, v1, -4.0 +// CHECK: [0x05,0x00,0x8b,0xd3,0x01,0xef,0x01,0x18] + v_pk_sub_u16 v5, v1, v2 op_sel:[1,0] // CHECK: [0x05,0x08,0x8b,0xd3,0x01,0x05,0x02,0x18] @@ -51337,6 +52054,18 @@ v_pk_max_u16 v5, exec_lo, v2 v_pk_max_u16 v5, exec_hi, v2 // CHECK: [0x05,0x00,0x8c,0xd3,0x7f,0x04,0x02,0x18] +v_pk_max_u16 v5, 0, v2 +// CHECK: [0x05,0x00,0x8c,0xd3,0x80,0x04,0x02,0x18] + +v_pk_max_u16 v5, -1, v2 +// CHECK: [0x05,0x00,0x8c,0xd3,0xc1,0x04,0x02,0x18] + +v_pk_max_u16 v5, 0.5, v2 +// CHECK: [0x05,0x00,0x8c,0xd3,0xf0,0x04,0x02,0x18] + +v_pk_max_u16 v5, -4.0, v2 +// CHECK: [0x05,0x00,0x8c,0xd3,0xf7,0x04,0x02,0x18] + v_pk_max_u16 v5, v1, v255 // CHECK: [0x05,0x00,0x8c,0xd3,0x01,0xff,0x03,0x18] @@ -51370,6 +52099,18 @@ v_pk_max_u16 v5, v1, exec_hi v_pk_max_u16 v5, v1, v2 op_sel:[0,0] // CHECK: [0x05,0x00,0x8c,0xd3,0x01,0x05,0x02,0x18] +v_pk_max_u16 v5, v1, 0 +// CHECK: [0x05,0x00,0x8c,0xd3,0x01,0x01,0x01,0x18] + +v_pk_max_u16 v5, v1, -1 +// CHECK: [0x05,0x00,0x8c,0xd3,0x01,0x83,0x01,0x18] + +v_pk_max_u16 v5, v1, 0.5 +// CHECK: [0x05,0x00,0x8c,0xd3,0x01,0xe1,0x01,0x18] + +v_pk_max_u16 v5, v1, -4.0 +// CHECK: [0x05,0x00,0x8c,0xd3,0x01,0xef,0x01,0x18] + v_pk_max_u16 v5, v1, v2 op_sel:[1,0] // CHECK: [0x05,0x08,0x8c,0xd3,0x01,0x05,0x02,0x18] @@ -51427,6 +52168,18 @@ v_pk_min_u16 v5, exec_lo, v2 v_pk_min_u16 v5, exec_hi, v2 // CHECK: [0x05,0x00,0x8d,0xd3,0x7f,0x04,0x02,0x18] +v_pk_min_u16 v5, 0, v2 +// CHECK: [0x05,0x00,0x8d,0xd3,0x80,0x04,0x02,0x18] + +v_pk_min_u16 v5, -1, v2 +// CHECK: [0x05,0x00,0x8d,0xd3,0xc1,0x04,0x02,0x18] + +v_pk_min_u16 v5, 0.5, v2 +// CHECK: [0x05,0x00,0x8d,0xd3,0xf0,0x04,0x02,0x18] + +v_pk_min_u16 v5, -4.0, v2 +// CHECK: [0x05,0x00,0x8d,0xd3,0xf7,0x04,0x02,0x18] + v_pk_min_u16 v5, v1, v255 // CHECK: [0x05,0x00,0x8d,0xd3,0x01,0xff,0x03,0x18] @@ -51460,6 +52213,18 @@ v_pk_min_u16 v5, v1, exec_hi v_pk_min_u16 v5, v1, v2 op_sel:[0,0] // CHECK: [0x05,0x00,0x8d,0xd3,0x01,0x05,0x02,0x18] +v_pk_min_u16 v5, v1, 0 +// CHECK: [0x05,0x00,0x8d,0xd3,0x01,0x01,0x01,0x18] + +v_pk_min_u16 v5, v1, -1 +// CHECK: [0x05,0x00,0x8d,0xd3,0x01,0x83,0x01,0x18] + +v_pk_min_u16 v5, v1, 0.5 +// CHECK: [0x05,0x00,0x8d,0xd3,0x01,0xe1,0x01,0x18] + +v_pk_min_u16 v5, v1, -4.0 +// CHECK: [0x05,0x00,0x8d,0xd3,0x01,0xef,0x01,0x18] + v_pk_min_u16 v5, v1, v2 op_sel:[1,0] // CHECK: [0x05,0x08,0x8d,0xd3,0x01,0x05,0x02,0x18] @@ -51481,6 +52246,189 @@ v_pk_min_u16 v5, v1, v2 op_sel_hi:[1,0] v_pk_min_u16 v5, v1, v2 op_sel_hi:[0,1] // CHECK: [0x05,0x00,0x8d,0xd3,0x01,0x05,0x02,0x10] +v_pk_fma_f16 v5, v1, v2, v3 +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0x05,0x0e,0x1c] + +v_pk_fma_f16 v255, v1, v2, v3 +// CHECK: [0xff,0x40,0x8e,0xd3,0x01,0x05,0x0e,0x1c] + +v_pk_fma_f16 v5, v255, v2, v3 +// CHECK: [0x05,0x40,0x8e,0xd3,0xff,0x05,0x0e,0x1c] + +v_pk_fma_f16 v5, s1, v2, v3 +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0x04,0x0e,0x1c] + +v_pk_fma_f16 v5, s101, v2, v3 +// CHECK: [0x05,0x40,0x8e,0xd3,0x65,0x04,0x0e,0x1c] + +v_pk_fma_f16 v5, flat_scratch_lo, v2, v3 +// CHECK: [0x05,0x40,0x8e,0xd3,0x66,0x04,0x0e,0x1c] + +v_pk_fma_f16 v5, flat_scratch_hi, v2, v3 +// CHECK: [0x05,0x40,0x8e,0xd3,0x67,0x04,0x0e,0x1c] + +v_pk_fma_f16 v5, vcc_lo, v2, v3 +// CHECK: [0x05,0x40,0x8e,0xd3,0x6a,0x04,0x0e,0x1c] + +v_pk_fma_f16 v5, vcc_hi, v2, v3 +// CHECK: [0x05,0x40,0x8e,0xd3,0x6b,0x04,0x0e,0x1c] + +v_pk_fma_f16 v5, m0, v2, v3 +// CHECK: [0x05,0x40,0x8e,0xd3,0x7c,0x04,0x0e,0x1c] + +v_pk_fma_f16 v5, exec_lo, v2, v3 +// CHECK: [0x05,0x40,0x8e,0xd3,0x7e,0x04,0x0e,0x1c] + +v_pk_fma_f16 v5, exec_hi, v2, v3 +// CHECK: [0x05,0x40,0x8e,0xd3,0x7f,0x04,0x0e,0x1c] + +v_pk_fma_f16 v5, 0, v2, v3 +// CHECK: [0x05,0x40,0x8e,0xd3,0x80,0x04,0x0e,0x1c] + +v_pk_fma_f16 v5, -1, v2, v3 +// CHECK: [0x05,0x40,0x8e,0xd3,0xc1,0x04,0x0e,0x1c] + +v_pk_fma_f16 v5, 0.5, v2, v3 +// CHECK: [0x05,0x40,0x8e,0xd3,0xf0,0x04,0x0e,0x1c] + +v_pk_fma_f16 v5, -4.0, v2, v3 +// CHECK: [0x05,0x40,0x8e,0xd3,0xf7,0x04,0x0e,0x1c] + +v_pk_fma_f16 v5, v1, v255, v3 +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0xff,0x0f,0x1c] + +v_pk_fma_f16 v5, v1, s2, v3 +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0x05,0x0c,0x1c] + +v_pk_fma_f16 v5, v1, s101, v3 +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0xcb,0x0c,0x1c] + +v_pk_fma_f16 v5, v1, flat_scratch_lo, v3 +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0xcd,0x0c,0x1c] + +v_pk_fma_f16 v5, v1, flat_scratch_hi, v3 +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0xcf,0x0c,0x1c] + +v_pk_fma_f16 v5, v1, vcc_lo, v3 +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0xd5,0x0c,0x1c] + +v_pk_fma_f16 v5, v1, vcc_hi, v3 +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0xd7,0x0c,0x1c] + +v_pk_fma_f16 v5, v1, m0, v3 +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0xf9,0x0c,0x1c] + +v_pk_fma_f16 v5, v1, exec_lo, v3 +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0xfd,0x0c,0x1c] + +v_pk_fma_f16 v5, v1, exec_hi, v3 +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0xff,0x0c,0x1c] + +v_pk_fma_f16 v5, v1, 0, v3 +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0x01,0x0d,0x1c] + +v_pk_fma_f16 v5, v1, -1, v3 +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0x83,0x0d,0x1c] + +v_pk_fma_f16 v5, v1, 0.5, v3 +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0xe1,0x0d,0x1c] + +v_pk_fma_f16 v5, v1, -4.0, v3 +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0xef,0x0d,0x1c] + +v_pk_fma_f16 v5, v1, v2, v255 +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0x05,0xfe,0x1f] + +v_pk_fma_f16 v5, v1, v2, s3 +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0x05,0x0e,0x18] + +v_pk_fma_f16 v5, v1, v2, s101 +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0x05,0x96,0x19] + +v_pk_fma_f16 v5, v1, v2, flat_scratch_lo +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0x05,0x9a,0x19] + +v_pk_fma_f16 v5, v1, v2, flat_scratch_hi +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0x05,0x9e,0x19] + +v_pk_fma_f16 v5, v1, v2, vcc_lo +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0x05,0xaa,0x19] + +v_pk_fma_f16 v5, v1, v2, vcc_hi +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0x05,0xae,0x19] + +v_pk_fma_f16 v5, v1, v2, m0 +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0x05,0xf2,0x19] + +v_pk_fma_f16 v5, v1, v2, exec_lo +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0x05,0xfa,0x19] + +v_pk_fma_f16 v5, v1, v2, exec_hi +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0x05,0xfe,0x19] + +v_pk_fma_f16 v5, v1, v2, 0 +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0x05,0x02,0x1a] + +v_pk_fma_f16 v5, v1, v2, -1 +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0x05,0x06,0x1b] + +v_pk_fma_f16 v5, v1, v2, 0.5 +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0x05,0xc2,0x1b] + +v_pk_fma_f16 v5, v1, v2, -4.0 +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0x05,0xde,0x1b] + +v_pk_fma_f16 v5, v1, v2, v3 op_sel:[1,0,0] +// CHECK: [0x05,0x48,0x8e,0xd3,0x01,0x05,0x0e,0x1c] + +v_pk_fma_f16 v5, v1, v2, v3 op_sel:[0,1,0] +// CHECK: [0x05,0x50,0x8e,0xd3,0x01,0x05,0x0e,0x1c] + +v_pk_fma_f16 v5, v1, v2, v3 op_sel:[0,0,1] +// CHECK: [0x05,0x60,0x8e,0xd3,0x01,0x05,0x0e,0x1c] + +v_pk_fma_f16 v5, v1, v2, v3 op_sel:[1,1,1] +// CHECK: [0x05,0x78,0x8e,0xd3,0x01,0x05,0x0e,0x1c] + +v_pk_fma_f16 v5, v1, v2, v3 op_sel_hi:[0,0,0] +// CHECK: [0x05,0x00,0x8e,0xd3,0x01,0x05,0x0e,0x04] + +v_pk_fma_f16 v5, v1, v2, v3 op_sel_hi:[1,0,0] +// CHECK: [0x05,0x00,0x8e,0xd3,0x01,0x05,0x0e,0x0c] + +v_pk_fma_f16 v5, v1, v2, v3 op_sel_hi:[0,1,0] +// CHECK: [0x05,0x00,0x8e,0xd3,0x01,0x05,0x0e,0x14] + +v_pk_fma_f16 v5, v1, v2, v3 op_sel_hi:[0,0,1] +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0x05,0x0e,0x04] + +v_pk_fma_f16 v5, v1, v2, v3 neg_lo:[1,0,0] +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0x05,0x0e,0x3c] + +v_pk_fma_f16 v5, v1, v2, v3 neg_lo:[0,1,0] +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0x05,0x0e,0x5c] + +v_pk_fma_f16 v5, v1, v2, v3 neg_lo:[0,0,1] +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0x05,0x0e,0x9c] + +v_pk_fma_f16 v5, v1, v2, v3 neg_lo:[1,1,1] +// CHECK: [0x05,0x40,0x8e,0xd3,0x01,0x05,0x0e,0xfc] + +v_pk_fma_f16 v5, v1, v2, v3 neg_hi:[1,0,0] +// CHECK: [0x05,0x41,0x8e,0xd3,0x01,0x05,0x0e,0x1c] + +v_pk_fma_f16 v5, v1, v2, v3 neg_hi:[0,1,0] +// CHECK: [0x05,0x42,0x8e,0xd3,0x01,0x05,0x0e,0x1c] + +v_pk_fma_f16 v5, v1, v2, v3 neg_hi:[0,0,1] +// CHECK: [0x05,0x44,0x8e,0xd3,0x01,0x05,0x0e,0x1c] + +v_pk_fma_f16 v5, v1, v2, v3 neg_hi:[1,1,1] +// CHECK: [0x05,0x47,0x8e,0xd3,0x01,0x05,0x0e,0x1c] + +v_pk_fma_f16 v5, v1, v2, v3 clamp +// CHECK: [0x05,0xc0,0x8e,0xd3,0x01,0x05,0x0e,0x1c] + v_pk_add_f16 v5, v1, v2 // CHECK: [0x05,0x00,0x8f,0xd3,0x01,0x05,0x02,0x18] @@ -51517,6 +52465,18 @@ v_pk_add_f16 v5, exec_lo, v2 v_pk_add_f16 v5, exec_hi, v2 // CHECK: [0x05,0x00,0x8f,0xd3,0x7f,0x04,0x02,0x18] +v_pk_add_f16 v5, 0, v2 +// CHECK: [0x05,0x00,0x8f,0xd3,0x80,0x04,0x02,0x18] + +v_pk_add_f16 v5, -1, v2 +// CHECK: [0x05,0x00,0x8f,0xd3,0xc1,0x04,0x02,0x18] + +v_pk_add_f16 v5, 0.5, v2 +// CHECK: [0x05,0x00,0x8f,0xd3,0xf0,0x04,0x02,0x18] + +v_pk_add_f16 v5, -4.0, v2 +// CHECK: [0x05,0x00,0x8f,0xd3,0xf7,0x04,0x02,0x18] + v_pk_add_f16 v5, v1, v255 // CHECK: [0x05,0x00,0x8f,0xd3,0x01,0xff,0x03,0x18] @@ -51550,6 +52510,18 @@ v_pk_add_f16 v5, v1, exec_hi v_pk_add_f16 v5, v1, v2 op_sel:[0,0] // CHECK: [0x05,0x00,0x8f,0xd3,0x01,0x05,0x02,0x18] +v_pk_add_f16 v5, v1, 0 +// CHECK: [0x05,0x00,0x8f,0xd3,0x01,0x01,0x01,0x18] + +v_pk_add_f16 v5, v1, -1 +// CHECK: [0x05,0x00,0x8f,0xd3,0x01,0x83,0x01,0x18] + +v_pk_add_f16 v5, v1, 0.5 +// CHECK: [0x05,0x00,0x8f,0xd3,0x01,0xe1,0x01,0x18] + +v_pk_add_f16 v5, v1, -4.0 +// CHECK: [0x05,0x00,0x8f,0xd3,0x01,0xef,0x01,0x18] + v_pk_add_f16 v5, v1, v2 op_sel:[1,0] // CHECK: [0x05,0x08,0x8f,0xd3,0x01,0x05,0x02,0x18] @@ -51628,6 +52600,18 @@ v_pk_mul_f16 v5, exec_lo, v2 v_pk_mul_f16 v5, exec_hi, v2 // CHECK: [0x05,0x00,0x90,0xd3,0x7f,0x04,0x02,0x18] +v_pk_mul_f16 v5, 0, v2 +// CHECK: [0x05,0x00,0x90,0xd3,0x80,0x04,0x02,0x18] + +v_pk_mul_f16 v5, -1, v2 +// CHECK: [0x05,0x00,0x90,0xd3,0xc1,0x04,0x02,0x18] + +v_pk_mul_f16 v5, 0.5, v2 +// CHECK: [0x05,0x00,0x90,0xd3,0xf0,0x04,0x02,0x18] + +v_pk_mul_f16 v5, -4.0, v2 +// CHECK: [0x05,0x00,0x90,0xd3,0xf7,0x04,0x02,0x18] + v_pk_mul_f16 v5, v1, v255 // CHECK: [0x05,0x00,0x90,0xd3,0x01,0xff,0x03,0x18] @@ -51661,6 +52645,18 @@ v_pk_mul_f16 v5, v1, exec_hi v_pk_mul_f16 v5, v1, v2 op_sel:[0,0] // CHECK: [0x05,0x00,0x90,0xd3,0x01,0x05,0x02,0x18] +v_pk_mul_f16 v5, v1, 0 +// CHECK: [0x05,0x00,0x90,0xd3,0x01,0x01,0x01,0x18] + +v_pk_mul_f16 v5, v1, -1 +// CHECK: [0x05,0x00,0x90,0xd3,0x01,0x83,0x01,0x18] + +v_pk_mul_f16 v5, v1, 0.5 +// CHECK: [0x05,0x00,0x90,0xd3,0x01,0xe1,0x01,0x18] + +v_pk_mul_f16 v5, v1, -4.0 +// CHECK: [0x05,0x00,0x90,0xd3,0x01,0xef,0x01,0x18] + v_pk_mul_f16 v5, v1, v2 op_sel:[1,0] // CHECK: [0x05,0x08,0x90,0xd3,0x01,0x05,0x02,0x18] @@ -51739,6 +52735,18 @@ v_pk_min_f16 v5, exec_lo, v2 v_pk_min_f16 v5, exec_hi, v2 // CHECK: [0x05,0x00,0x91,0xd3,0x7f,0x04,0x02,0x18] +v_pk_min_f16 v5, 0, v2 +// CHECK: [0x05,0x00,0x91,0xd3,0x80,0x04,0x02,0x18] + +v_pk_min_f16 v5, -1, v2 +// CHECK: [0x05,0x00,0x91,0xd3,0xc1,0x04,0x02,0x18] + +v_pk_min_f16 v5, 0.5, v2 +// CHECK: [0x05,0x00,0x91,0xd3,0xf0,0x04,0x02,0x18] + +v_pk_min_f16 v5, -4.0, v2 +// CHECK: [0x05,0x00,0x91,0xd3,0xf7,0x04,0x02,0x18] + v_pk_min_f16 v5, v1, v255 // CHECK: [0x05,0x00,0x91,0xd3,0x01,0xff,0x03,0x18] @@ -51772,6 +52780,18 @@ v_pk_min_f16 v5, v1, exec_hi v_pk_min_f16 v5, v1, v2 op_sel:[0,0] // CHECK: [0x05,0x00,0x91,0xd3,0x01,0x05,0x02,0x18] +v_pk_min_f16 v5, v1, 0 +// CHECK: [0x05,0x00,0x91,0xd3,0x01,0x01,0x01,0x18] + +v_pk_min_f16 v5, v1, -1 +// CHECK: [0x05,0x00,0x91,0xd3,0x01,0x83,0x01,0x18] + +v_pk_min_f16 v5, v1, 0.5 +// CHECK: [0x05,0x00,0x91,0xd3,0x01,0xe1,0x01,0x18] + +v_pk_min_f16 v5, v1, -4.0 +// CHECK: [0x05,0x00,0x91,0xd3,0x01,0xef,0x01,0x18] + v_pk_min_f16 v5, v1, v2 op_sel:[1,0] // CHECK: [0x05,0x08,0x91,0xd3,0x01,0x05,0x02,0x18] @@ -51850,6 +52870,18 @@ v_pk_max_f16 v5, exec_lo, v2 v_pk_max_f16 v5, exec_hi, v2 // CHECK: [0x05,0x00,0x92,0xd3,0x7f,0x04,0x02,0x18] +v_pk_max_f16 v5, 0, v2 +// CHECK: [0x05,0x00,0x92,0xd3,0x80,0x04,0x02,0x18] + +v_pk_max_f16 v5, -1, v2 +// CHECK: [0x05,0x00,0x92,0xd3,0xc1,0x04,0x02,0x18] + +v_pk_max_f16 v5, 0.5, v2 +// CHECK: [0x05,0x00,0x92,0xd3,0xf0,0x04,0x02,0x18] + +v_pk_max_f16 v5, -4.0, v2 +// CHECK: [0x05,0x00,0x92,0xd3,0xf7,0x04,0x02,0x18] + v_pk_max_f16 v5, v1, v255 // CHECK: [0x05,0x00,0x92,0xd3,0x01,0xff,0x03,0x18] @@ -51883,6 +52915,18 @@ v_pk_max_f16 v5, v1, exec_hi v_pk_max_f16 v5, v1, v2 op_sel:[0,0] // CHECK: [0x05,0x00,0x92,0xd3,0x01,0x05,0x02,0x18] +v_pk_max_f16 v5, v1, 0 +// CHECK: [0x05,0x00,0x92,0xd3,0x01,0x01,0x01,0x18] + +v_pk_max_f16 v5, v1, -1 +// CHECK: [0x05,0x00,0x92,0xd3,0x01,0x83,0x01,0x18] + +v_pk_max_f16 v5, v1, 0.5 +// CHECK: [0x05,0x00,0x92,0xd3,0x01,0xe1,0x01,0x18] + +v_pk_max_f16 v5, v1, -4.0 +// CHECK: [0x05,0x00,0x92,0xd3,0x01,0xef,0x01,0x18] + v_pk_max_f16 v5, v1, v2 op_sel:[1,0] // CHECK: [0x05,0x08,0x92,0xd3,0x01,0x05,0x02,0x18] |