From 47106e0f80554fe07563c20ca69b99e8ba044ffb Mon Sep 17 00:00:00 2001 From: Christian Gmeiner Date: Tue, 27 Feb 2024 15:41:18 +0100 Subject: [PATCH] etnaviv: isa: Add bit_extract opcode Encoded instruction is taken from blob running: - dEQP-GLES31.functional.shaders.builtin_functions.integer.bitfieldextract.int_lowp_vertex Signed-off-by: Christian Gmeiner Part-of: --- src/etnaviv/isa/etnaviv.xml | 5 +++++ src/etnaviv/isa/tests/disasm.cpp | 1 + 2 files changed, 6 insertions(+) diff --git a/src/etnaviv/isa/etnaviv.xml b/src/etnaviv/isa/etnaviv.xml index 31814b537d2..260db13e543 100644 --- a/src/etnaviv/isa/etnaviv.xml +++ b/src/etnaviv/isa/etnaviv.xml @@ -1137,6 +1137,11 @@ SPDX-License-Identifier: MIT 1 + + 100000 + 1 + + 100001 1 diff --git a/src/etnaviv/isa/tests/disasm.cpp b/src/etnaviv/isa/tests/disasm.cpp index 77cef84be05..48ec773a3cc 100644 --- a/src/etnaviv/isa/tests/disasm.cpp +++ b/src/etnaviv/isa/tests/disasm.cpp @@ -136,6 +136,7 @@ INSTANTIATE_TEST_SUITE_P(Opcodes, DisasmTest, disasm_state{ {0x0082101d, 0x00001804, 0x40010000, 0x00000008}, "and.s32 t2.x___, t1.xxxx, void, t0.xxxx\n"}, disasm_state{ {0x0080101e, 0x00001804, 0x40010000, 0x00000008}, "xor.s32 t0.x___, t1.xxxx, void, t0.xxxx\n"}, disasm_state{ {0x0080101f, 0x00000004, 0x40010000, 0x00000018}, "not.s32 t0.x___, void, void, t1.xxxx\n"}, + disasm_state{ {0x00811020, 0x00001804, 0x40010140, 0x00000038}, "bit_extract.s32 t1.x___, t1.xxxx, t2.xxxx, t3.xxxx\n"}, disasm_state{ {0x00801021, 0x00000004, 0x00010000, 0x00000008}, "popcount t0.x___, void, void, t0.xxxx\n"}, disasm_state{ {0x00801017, 0x00000004, 0x40010000, 0x00000018}, "iabs.s32 t0.x___, void, void, t1.xxxx\n"}, disasm_state{ {0x00801018, 0x00000004, 0x40010000, 0x00000008}, "leadzero.s32 t0.x___, void, void, t0.xxxx\n"},