mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-01 07:30:09 +01:00
genxml: Fix parsing of address fields in groups.
For example,
<group count="4" start="64" size="64">
<field name="Pointer" start="5" end="63" type="address"/>
</group>
used to generate:
const uint64_t v2_address =
__gen_combine_address(data, &dw[2], values->Pointer, 0);
...
const uint64_t v4_address =
__gen_combine_address(data, &dw[4], values->Pointer, 0);
...
but now generates code with proper subscripts:
const uint64_t v2_address =
__gen_combine_address(data, &dw[2], values->Pointer[0], 0);
...
const uint64_t v4_address =
__gen_combine_address(data, &dw[4], values->Pointer[1], 0);
...
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
This commit is contained in:
parent
845d07978f
commit
df2d55ba57
1 changed files with 2 additions and 2 deletions
|
|
@ -467,13 +467,13 @@ class Group(object):
|
|||
|
||||
if dw.size == 32:
|
||||
if dw.address:
|
||||
print(" dw[%d] = __gen_combine_address(data, &dw[%d], values->%s, %s);" % (index, index, dw.address.name, v))
|
||||
print(" dw[%d] = __gen_combine_address(data, &dw[%d], values->%s, %s);" % (index, index, dw.address.name + field.dim, v))
|
||||
continue
|
||||
|
||||
if dw.address:
|
||||
v_address = "v%d_address" % index
|
||||
print(" const uint64_t %s =\n __gen_combine_address(data, &dw[%d], values->%s, %s);" %
|
||||
(v_address, index, dw.address.name, v))
|
||||
(v_address, index, dw.address.name + field.dim, v))
|
||||
v = v_address
|
||||
|
||||
print(" dw[%d] = %s;" % (index, v))
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue