isaspec: encode: handle special fieldname properties

Without this change a fieldname like '{DST::align=12}' was not used for
encoding. Change the regex to include such fieldnames and remove the fieldname
property in a later step.

Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Reviewed-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20462>
This commit is contained in:
Christian Gmeiner
2022-12-18 13:33:15 +01:00
committed by Marge Bot
parent 4429bdd7f5
commit 9e56f69edf

View File

@@ -133,9 +133,12 @@ class Case(object):
self.expr = None
if case.expr is not None:
self.expr = isa.expressions[case.expr]
self.fieldnames = re.findall(r"{([a-zA-Z0-9_]+)}", case.display)
self.fieldnames = re.findall(r"{([a-zA-Z0-9_:]+)}", case.display)
self.append_forced(bitset)
# remove special fieldname properties e.g. :align=
self.fieldnames = list(map(lambda name: name.split(':')[0], self.fieldnames))
# Handle fields which don't appear in display template but have
# force="true"
def append_forced(self, bitset):