pan/bi: Add pseudo register formats to XML

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8213>
This commit is contained in:
Alyssa Rosenzweig 2020-12-16 13:09:50 -05:00 committed by Marge Bot
parent cffc1d90da
commit 27e37a7746
2 changed files with 25 additions and 2 deletions

View File

@ -6314,6 +6314,16 @@
<src start="0"/>
<src start="3"/>
<src start="6" mask="0xf7"/>
<mod name="register_format" size="4" pseudo="true">
<opt>f16</opt>
<opt>f32</opt>
<opt>s32</opt>
<opt>u32</opt>
<opt>s16</opt>
<opt>u16</opt>
<opt>f64</opt>
<opt>i64</opt>
</mod>
<mod name="vecsize" start="9" size="2">
<opt>none</opt>
<opt>v2</opt>
@ -7618,6 +7628,16 @@
<src start="0"/>
<src start="3"/>
<src start="6" mask="0xf7"/>
<mod name="register_format" size="4" pseudo="true">
<opt>f16</opt>
<opt>f32</opt>
<opt>s32</opt>
<opt>u32</opt>
<opt>s16</opt>
<opt>u16</opt>
<opt>f64</opt>
<opt>i64</opt>
</mod>
<mod name="vecsize" start="9" size="2">
<opt>none</opt>
<opt>v2</opt>

View File

@ -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'))]