Structs support sub-structs

This commit is contained in:
nub31
2025-06-02 16:22:50 +02:00
parent 0e241bea46
commit 69ca860f4b

View File

@@ -1379,7 +1379,7 @@ public class Generator
if (IsLargeType(field.Type)) if (IsLargeType(field.Type))
{ {
_builder.AppendLine($" blit %{offsetName}, {var}, {QbeTypeSize(field.Type)}"); _builder.AppendLine($" blit {var}, %{offsetName}, {QbeTypeSize(field.Type)}");
} }
else else
{ {
@@ -1391,7 +1391,15 @@ public class Generator
var var = GenerateExpression(field.Value.Value); var var = GenerateExpression(field.Value.Value);
var offsetName = GenVarName(); var offsetName = GenVarName();
_builder.AppendLine($" %{offsetName} =l add %{structVar}, {offset}"); _builder.AppendLine($" %{offsetName} =l add %{structVar}, {offset}");
_builder.AppendLine($" store{SQT(field.Type)} {var}, %{offsetName}");
if (IsLargeType(field.Type))
{
_builder.AppendLine($" blit {var}, %{offsetName}, {QbeTypeSize(field.Type)}");
}
else
{
_builder.AppendLine($" store{SQT(field.Type)} {var}, %{offsetName}");
}
} }
else else
{ {