etnaviv: isa: Add "thread" info to TEX instruction

Blob generates this with the glmark2:texture benchmark on STM32MP257.

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38363>
This commit is contained in:
Gert Wollny
2025-11-11 00:36:39 +01:00
committed by Marge Bot
parent 13a20f6571
commit 13148afd0e
2 changed files with 19 additions and 3 deletions

View File

@@ -11,7 +11,7 @@ SPDX-License-Identifier: MIT
</template>
<template name="INSTR_TEX">
{NAME}
{NAME}{THREAD}
</template>
<template name="INSTR_CF">
@@ -700,8 +700,13 @@ SPDX-License-Identifier: MIT
<field name="RMODE" low="32" high="34" type="#reg_addressing_mode"/>
<field name="TEX_SWIZ" low="35" high="42" type="#src-swizzle"/>
<pattern pos="109">0</pattern>
<pattern pos="120">0</pattern>
<field name="LOW_HALF" pos="109" type="bool"/>
<field name="HIGH_HALF" pos="120" type="bool"/>
<derived name="THREAD" type="#thread">
<expr>{HIGH_HALF} &lt;&lt; 1 | {LOW_HALF}</expr>
</derived>
<pattern pos="127">0</pattern>
</bitset>

View File

@@ -365,6 +365,17 @@ INSTANTIATE_TEST_SUITE_P(texldgpcf, DisasmTest,
);
// clang-format on
// clang-format off
INSTANTIATE_TEST_SUITE_P(texldthreaded, DisasmTest,
testing::Values(
// taken from "glmark2 -b texture:texture-filter=linear (GC8000)
disasm_state{ {0x07831018, 0x15001f20, 0x00000020, 0x00002000}, "texld.t0 t3, tex0.xyzw, th1.xyyy, void, void\n"},
disasm_state{ {0x07831018, 0x3f801f20, 0x00000020, 0x01000000}, "texld.t1 t3, tex0.xyzw, th1.zwww, void, void\n"},
disasm_state{ {0x07811003, 0x39003805, 0x01c80140, 0x00000000}, "mul.rtz t1, t3.xyzw, t2.xyzw, void\n"}
)
);
// clang-format on
// clang-format off
INSTANTIATE_TEST_SUITE_P(LoadStoreVariants, DisasmTest,
testing::Values(