From b216fd044bca400aab12e24fbdacc4e70953890c Mon Sep 17 00:00:00 2001 From: Christian Gmeiner Date: Mon, 4 Mar 2024 12:36:23 +0100 Subject: [PATCH] etnaviv: isa: Add encode support Signed-off-by: Christian Gmeiner Part-of: --- src/etnaviv/isa/etnaviv.xml | 61 +++++++++++++++++++++++++++++++++++++ src/etnaviv/isa/meson.build | 11 +++++++ 2 files changed, 72 insertions(+) diff --git a/src/etnaviv/isa/etnaviv.xml b/src/etnaviv/isa/etnaviv.xml index eca8241a223..c9a3ebe0a40 100644 --- a/src/etnaviv/isa/etnaviv.xml +++ b/src/etnaviv/isa/etnaviv.xml @@ -125,6 +125,13 @@ SPDX-License-Identifier: MIT + + + p->DST_USE + src->amode + src->reg + p->COMPS + @@ -137,6 +144,46 @@ SPDX-License-Identifier: MIT {TYPE_BIT2} << 2 | {TYPE_BIT01} + + + src->type & 0x3 + (src->type & 0x4) > 2 + src->sel_bit0 + src->sel_bit1 + src->cond + src->rounding + src->sat + src->dst.use + &src->dst + src->dst_full + src->dst.write_mask + &src->src[0] + src->src[0].use + src->src[0].reg + src->src[0].rgroup + src->src[0].amode + &src->src[1] + src->src[1].use + src->src[1].reg + src->src[1].rgroup + src->src[1].amode + &src->src[2] + rc->src[2].use + src->src[2].reg + src->src[2].rgroup + src->src[2].amode + + src->tex.id + src->tex.swiz + src->imm + + + 1 + 0 + 0 + 0 + 0 + @@ -148,6 +195,13 @@ SPDX-License-Identifier: MIT + + + (src & 0x03) >> 0 + (src & 0x0c) >> 2 + (src & 0x30) >> 4 + (src & 0xc0) >> 6 + @@ -272,6 +326,13 @@ SPDX-License-Identifier: MIT + + + src->swiz + src->neg + src->abs + p->SRC_RGROUP + diff --git a/src/etnaviv/isa/meson.build b/src/etnaviv/isa/meson.build index 4d77a2c0399..ee5bd091c5e 100644 --- a/src/etnaviv/isa/meson.build +++ b/src/etnaviv/isa/meson.build @@ -56,8 +56,19 @@ enums_h = custom_target( depend_files: isa_depend_files, ) +encode_h = custom_target( + 'encode.h', + input: ['etnaviv.xml'], + output: 'encode.h', + command: [ + prog_isaspec_encode, '--xml', '@INPUT@', '--out-h', '@OUTPUT@' + ], + depend_files: isa_depend_files, +) + encode_files = [ enums_h, + encode_h, 'encode.c', ]