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 <boris.brezillon@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6797>
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 @@
         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 @@
                 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)