From fa7d0974fb9fbfba47632999c3ad9176759a2815 Mon Sep 17 00:00:00 2001 From: Boris Brezillon Date: Sat, 5 Sep 2020 11:53:06 +0200 Subject: [PATCH] panfrost: gen_pack: Move the group get_length() logic to its own method So we can re-use it elsewhere. Signed-off-by: Boris Brezillon Reviewed-by: Alyssa Rosenzweig Part-of: --- src/panfrost/lib/gen_pack.py | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/src/panfrost/lib/gen_pack.py b/src/panfrost/lib/gen_pack.py index ffa8e01..1877f27 100644 --- a/src/panfrost/lib/gen_pack.py +++ b/src/panfrost/lib/gen_pack.py @@ -290,6 +290,16 @@ class Group(object): self.length = 0 self.fields = [] + def get_length(self): + # Determine number of bytes in this group. + calculated = max(field.end // 8 for field in self.fields) + 1 + if self.length > 0: + assert(self.length >= calculated) + else: + self.length = calculated + return self.length + + def emit_template_struct(self, dim, opaque_structs): if self.count == 0: print(" /* variable length fields follow */") @@ -320,13 +330,7 @@ class Group(object): words[b].fields.append(field) def emit_pack_function(self, opaque_structs): - # Determine number of bytes in this group. - calculated = max(field.end // 8 for field in self.fields) + 1 - - if self.length > 0: - assert(self.length >= calculated) - else: - self.length = calculated + self.get_length() words = {} self.collect_words(words) -- 2.7.4