From 27e37a77461874c7d41c5268359b281a997326ec Mon Sep 17 00:00:00 2001 From: Alyssa Rosenzweig Date: Wed, 16 Dec 2020 13:09:50 -0500 Subject: [PATCH] pan/bi: Add pseudo register formats to XML Signed-off-by: Alyssa Rosenzweig Part-of: --- src/panfrost/bifrost/ISA.xml | 20 ++++++++++++++++++++ src/panfrost/bifrost/isa_parse.py | 7 +++++-- 2 files changed, 25 insertions(+), 2 deletions(-) diff --git a/src/panfrost/bifrost/ISA.xml b/src/panfrost/bifrost/ISA.xml index bdfff876e36..b774a0f5e4f 100644 --- a/src/panfrost/bifrost/ISA.xml +++ b/src/panfrost/bifrost/ISA.xml @@ -6314,6 +6314,16 @@ + + f16 + f32 + s32 + u32 + s16 + u16 + f64 + i64 + none v2 @@ -7618,6 +7628,16 @@ + + f16 + f32 + s32 + u32 + s16 + u16 + f64 + i64 + none v2 diff --git a/src/panfrost/bifrost/isa_parse.py b/src/panfrost/bifrost/isa_parse.py index c05ce55b5f9..8d61341816d 100644 --- a/src/panfrost/bifrost/isa_parse.py +++ b/src/panfrost/bifrost/isa_parse.py @@ -55,10 +55,13 @@ def parse_derived(obj): return out -def parse_modifiers(obj): +def parse_modifiers(obj, include_pseudo): out = [] for mod in obj.findall('mod'): + if mod.attrib.get('pseudo', False) and not include_pseudo: + continue + name = mod.attrib['name'] start = mod.attrib.get('start', None) size = int(mod.attrib['size']) @@ -118,7 +121,7 @@ def parse_instruction(ins, include_pseudo): common['immediates'].append([imm.attrib['name'], start, int(imm.attrib['size'])]) common['derived'] = parse_derived(ins) - common['modifiers'] = parse_modifiers(ins) + common['modifiers'] = parse_modifiers(ins, include_pseudo) for swap in ins.findall('swap'): lr = [int(swap.get('left')), int(swap.get('right'))]