ir3/isa: account for randomly set by blob lowest bit of ibo atomics

As far as I could see - blob randomly sets the lowest bit of atomic.b.*
instructions.

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9841>
This commit is contained in:
Danylo Piliaiev
2021-03-24 14:09:56 +02:00
committed by Marge Bot
parent f181e61375
commit 00d6ccebf9
2 changed files with 13 additions and 13 deletions
+4 -4
View File
@@ -297,9 +297,9 @@ static const struct test {
INSTR_6XX(d5c60003_03008001, "(sy)atomic.max.untyped.1d.u32.1.l r0.w, l[r0.z], r0.w"),
/* Bindless atomic: */
INSTR_6XX(c03a0003_01640001, "atomic.b.add.untyped.1d.s32.1.imm r0.w, r0.y, 0"), /* atomic.b.add.g.s32.1d.mode0.base0 r0.w,r0.y,0 */
INSTR_6XX(c03a0003_01660001, "atomic.b.and.untyped.1d.s32.1.imm r0.w, r0.y, 0"), /* atomic.b.and.g.s32.1d.mode0.base0 r0.w,r0.y,0 */
INSTR_6XX(c0360000_0365c801, "atomic.b.max.typed.1d.u32.1.imm r0.x, r0.w, 0"), /* atomic.b.max.g.u32.1d.mode0.base0 r0.x,r0.w,0 */
INSTR_6XX(c03a0003_01640000, "atomic.b.add.untyped.1d.s32.1.imm r0.w, r0.y, 0"), /* atomic.b.add.g.s32.1d.mode0.base0 r0.w,r0.y,0 */
INSTR_6XX(c03a0003_01660000, "atomic.b.and.untyped.1d.s32.1.imm r0.w, r0.y, 0"), /* atomic.b.and.g.s32.1d.mode0.base0 r0.w,r0.y,0 */
INSTR_6XX(c0360000_0365c800, "atomic.b.max.typed.1d.u32.1.imm r0.x, r0.w, 0"), /* atomic.b.max.g.u32.1d.mode0.base0 r0.x,r0.w,0 */
/* dEQP-GLES31.functional.shaders.opaque_type_indexing.sampler.const_literal.fragment.sampler2d */
INSTR_6XX(a0c01f04_0cc00005, "sam (f32)(xyzw)r1.x, r0.z, s#6, t#6"),
@@ -315,7 +315,7 @@ static const struct test {
/* dEQP-VK.descriptor_indexing.uniform_texel_buffer */
INSTR_6XX(a0481f00_40000405, "isaml.s2en.nonuniform.base0 (f32)(xyzw)r0.x, r0.z, r0.z, r0.x"),
/* dEQP-VK.descriptor_indexing.storage_image */
INSTR_6XX(d0360c04_02640b81, "(sy)atomic.b.add.typed.2d.u32.1.nonuniform.base0 r1.x, r0.z, r1.z"),
INSTR_6XX(d0360c04_02640b80, "(sy)atomic.b.add.typed.2d.u32.1.nonuniform.base0 r1.x, r0.z, r1.z"),
/* dEQP-VK.descriptor_indexing.sampler */
INSTR_6XX(a0c81f00_40000005, "sam.s2en.nonuniform.base0 (f32)(xyzw)r0.x, r0.z, r0.x"),
+9 -9
View File
@@ -721,19 +721,19 @@ SOFTWARE.
</bitset>
<bitset name="atomic.b.add" extends="#instruction-cat6-a6xx-ibo">
<pattern pos="0" >1</pattern>
<pattern pos="0" >x</pattern>
<pattern low="14" high="19">010000</pattern> <!-- OPC -->
<pattern low="52" high="53">11</pattern>
</bitset>
<bitset name="atomic.b.sub" extends="#instruction-cat6-a6xx-ibo">
<pattern pos="0" >1</pattern>
<pattern pos="0" >x</pattern>
<pattern low="14" high="19">010001</pattern> <!-- OPC -->
<pattern low="52" high="53">11</pattern>
</bitset>
<bitset name="atomic.b.xchg" extends="#instruction-cat6-a6xx-ibo">
<pattern pos="0" >1</pattern>
<pattern pos="0" >x</pattern>
<pattern low="14" high="19">010010</pattern> <!-- OPC -->
<pattern low="52" high="53">11</pattern>
</bitset>
@@ -741,37 +741,37 @@ SOFTWARE.
<!-- inc/dec? -->
<bitset name="atomic.b.cmpxchg" extends="#instruction-cat6-a6xx-ibo">
<pattern pos="0" >1</pattern>
<pattern pos="0" >x</pattern>
<pattern low="14" high="19">010101</pattern> <!-- OPC -->
<pattern low="52" high="53">11</pattern>
</bitset>
<bitset name="atomic.b.min" extends="#instruction-cat6-a6xx-ibo">
<pattern pos="0" >1</pattern>
<pattern pos="0" >x</pattern>
<pattern low="14" high="19">010110</pattern> <!-- OPC -->
<pattern low="52" high="53">11</pattern>
</bitset>
<bitset name="atomic.b.max" extends="#instruction-cat6-a6xx-ibo">
<pattern pos="0" >1</pattern>
<pattern pos="0" >x</pattern>
<pattern low="14" high="19">010111</pattern> <!-- OPC -->
<pattern low="52" high="53">11</pattern>
</bitset>
<bitset name="atomic.b.and" extends="#instruction-cat6-a6xx-ibo">
<pattern pos="0" >1</pattern>
<pattern pos="0" >x</pattern>
<pattern low="14" high="19">011000</pattern> <!-- OPC -->
<pattern low="52" high="53">11</pattern>
</bitset>
<bitset name="atomic.b.or" extends="#instruction-cat6-a6xx-ibo">
<pattern pos="0" >1</pattern>
<pattern pos="0" >x</pattern>
<pattern low="14" high="19">011001</pattern> <!-- OPC -->
<pattern low="52" high="53">11</pattern>
</bitset>
<bitset name="atomic.b.xor" extends="#instruction-cat6-a6xx-ibo">
<pattern pos="0" >1</pattern>
<pattern pos="0" >x</pattern>
<pattern low="14" high="19">011010</pattern> <!-- OPC -->
<pattern low="52" high="53">11</pattern>
</bitset>