vk/cmd_queue: try to fix some indentation

still not perfect, but at least somewhat readable now

Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34534>
This commit is contained in:
Mike Blumenkrantz
2025-04-15 13:45:13 -04:00
committed by Marge Bot
parent f6c5f0c19d
commit c3b6122cdf
+14 -11
View File
@@ -477,7 +477,7 @@ def get_array_copy(command, param):
copy = "memcpy((void*)%s, %s, %s * (%s));" % (field_name, param.name, field_size, param.len)
return "%s\n %s" % (allocation, copy)
def get_array_member_copy(struct, src_name, member):
def get_array_member_copy(struct, src_name, member, level):
field_name = "%s->%s" % (struct, member.name)
if member.len == "struct-ptr":
field_size = "sizeof(*%s)" % (field_name)
@@ -485,7 +485,8 @@ def get_array_member_copy(struct, src_name, member):
field_size = "sizeof(*%s) * %s->%s" % (field_name, struct, member.len)
allocation = "%s = vk_zalloc(queue->alloc, %s, 8, VK_SYSTEM_ALLOCATION_SCOPE_OBJECT);\n if (%s == NULL) goto err;\n" % (field_name, field_size, field_name)
copy = "memcpy((void*)%s, %s->%s, %s);" % (field_name, src_name, member.name, field_size)
return "if (%s->%s) {\n %s\n %s\n}\n" % (src_name, member.name, allocation, copy)
indent = " " * (level + 1)
return "if (%s->%s) {\n%s%s\n%s%s\n}\n" % (src_name, member.name, indent, allocation, indent, copy)
def get_pnext_member_copy(struct, src_type, member, types, level):
if not types[src_type].extended_by:
@@ -519,25 +520,27 @@ def get_struct_copy(dst, src_name, src_type, size, types, level=0):
global tmp_dst_idx
global tmp_src_idx
allocation = "%s = vk_zalloc(queue->alloc, %s, 8, VK_SYSTEM_ALLOCATION_SCOPE_OBJECT);\n if (%s == NULL) goto err;\n" % (dst, size, dst)
allocation = "%s = vk_zalloc(queue->alloc, %s, 8, VK_SYSTEM_ALLOCATION_SCOPE_OBJECT);\n%sif (%s == NULL) goto err;\n" % (dst, size, " " * (level + 1), dst)
copy = "memcpy((void*)%s, %s, %s);" % (dst, src_name, size)
level += 1
tmp_dst = "%s *tmp_dst%d = (void *) %s; (void) tmp_dst%d;" % (src_type, level, dst, level)
tmp_src = "%s *tmp_src%d = (void *) %s; (void) tmp_src%d;" % (src_type, level, src_name, level)
tmp_dst_name = "tmp_dst%d" % level
tmp_src_name = "tmp_src%d" % level
tmp_dst = "%s *%s = (void *) %s; (void) %s;" % (src_type, tmp_dst_name, dst, tmp_dst_name)
tmp_src = "%s *%s = (void *) %s; (void) %s;" % (src_type, tmp_src_name, src_name, tmp_src_name)
member_copies = ""
if src_type in types:
for member in types[src_type].members:
if member.len and member.len != 'null-terminated':
member_copies += get_array_member_copy("tmp_dst%d" % level, "tmp_src%d" % level, member)
member_copies += get_array_member_copy(tmp_dst_name, tmp_src_name, member, level + 1)
elif member.name == 'pNext':
member_copies += get_pnext_member_copy("tmp_dst%d" % level, src_type, member, types, level)
member_copies += get_pnext_member_copy(tmp_dst_name, src_type, member, types, level + 1)
null_assignment = "%s = NULL;" % dst
if_stmt = "if (%s) {" % src_name
indent = " " * level
return "%s\n %s\n %s\n %s\n %s\n %s\n%s} else {\n %s\n%s}" % (if_stmt, allocation, copy, tmp_dst, tmp_src, member_copies, indent, null_assignment, indent)
indent = "\n%s" % (" " * (level + 1))
indent_sameline = "\n%s" % (" " * level)
return "%s%s%s%s%s%s%s%s%s%s%s%s} else {%s%s%s}" % (if_stmt, indent, allocation, indent, copy, indent, tmp_dst, indent, tmp_src, indent, member_copies, indent_sameline, indent, null_assignment, indent_sameline)
def get_struct_free(command, param, types):
field_name = "cmd->u.%s.%s" % (to_struct_field_name(command.name), to_field_name(param.name))
@@ -550,7 +553,7 @@ def get_struct_free(command, param, types):
member_name = "cmd->u.%s.%s->%s" % (to_struct_field_name(command.name), to_field_name(param.name), member.name)
const_cast = remove_suffix(member.decl.replace("const", ""), member.name)
member_frees += "vk_free(queue->alloc, (%s)%s);\n" % (const_cast, member_name)
return "%s %s\n" % (member_frees, struct_free)
return "%s %s\n" % (member_frees, struct_free)
EntrypointType = namedtuple('EntrypointType', 'name enum members extended_by guard')