diff options
Diffstat (limited to 'Tools/cases_generator/tier1_generator.py')
-rw-r--r-- | Tools/cases_generator/tier1_generator.py | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/Tools/cases_generator/tier1_generator.py b/Tools/cases_generator/tier1_generator.py index 5df4413..c9dce1d 100644 --- a/Tools/cases_generator/tier1_generator.py +++ b/Tools/cases_generator/tier1_generator.py @@ -37,20 +37,25 @@ def declare_variables(inst: Instruction, out: CWriter) -> None: if isinstance(uop, Uop): for var in reversed(uop.stack.inputs): if var.name not in variables: - type = var.type if var.type else "PyObject *" variables.add(var.name) + type, null = (var.type, "NULL") if var.type else ("_PyStackRef", "PyStackRef_NULL") + space = " " if type[-1].isalnum() else "" if var.condition: - out.emit(f"{type}{var.name} = NULL;\n") + out.emit(f"{type}{space}{var.name} = {null};\n") else: - out.emit(f"{type}{var.name};\n") + if var.is_array(): + out.emit(f"{var.type}{space}{var.name};\n") + else: + out.emit(f"{type}{space}{var.name};\n") for var in uop.stack.outputs: if var.name not in variables: variables.add(var.name) - type = var.type if var.type else "PyObject *" + type, null = (var.type, "NULL") if var.type else ("_PyStackRef", "PyStackRef_NULL") + space = " " if type[-1].isalnum() else "" if var.condition: - out.emit(f"{type}{var.name} = NULL;\n") + out.emit(f"{type}{space}{var.name} = {null};\n") else: - out.emit(f"{type}{var.name};\n") + out.emit(f"{type}{space}{var.name};\n") def write_uop( |