From 55be460e03ff3fdb9e3a54b979c5ca16bd6045fe Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Fri, 21 Jul 2023 12:26:22 +0100 Subject: Use call instead of call-pointer --- .../shedlang/compiler/patio/PatioCodeGenNamespaces.java | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) (limited to 'src/main/java') diff --git a/src/main/java/org/shedlang/compiler/patio/PatioCodeGenNamespaces.java b/src/main/java/org/shedlang/compiler/patio/PatioCodeGenNamespaces.java index 7623f23a..43101e7a 100644 --- a/src/main/java/org/shedlang/compiler/patio/PatioCodeGenNamespaces.java +++ b/src/main/java/org/shedlang/compiler/patio/PatioCodeGenNamespaces.java @@ -4,7 +4,6 @@ import org.shedlang.compiler.patio.ast.PatioVisibility; import org.shedlang.compiler.patio.ast.instructions.*; import org.shedlang.compiler.patio.ast.operands.PatioBool; import org.shedlang.compiler.patio.ast.operands.PatioDataPtr; -import org.shedlang.compiler.patio.ast.operands.PatioFunctionPtr; import org.shedlang.compiler.patio.ast.types.PatioDataLayout; import org.shedlang.compiler.patio.ast.types.PatioTypes; import org.shedlang.compiler.sources.Sources; @@ -13,6 +12,7 @@ import org.shedlang.compiler.types.NamespaceTypeInfo; import org.shedlang.compiler.util.Lists; import java.util.List; +import java.util.Optional; import java.util.function.Function; public class PatioCodeGenNamespaces { @@ -82,22 +82,13 @@ public class PatioCodeGenNamespaces { source )); - var initReturnResult = importContext.allocateLocal( - PatioCodeGenLocalSpace.TEMPORARY, - PatioTypes.BOOL - ); - var initReturn = initReturnResult.value(); - importContext = initReturnResult.context(); - importContext = importContext.addInstruction(new PatioIf( isInited, List.of(), List.of( - // TODO: use direct call - // TODO: don't require target - new PatioCallPointer( - initReturn, - new PatioFunctionPtr(globalNameNamespaceInit(namespaceName)), + new PatioCall( + Optional.empty(), + globalNameNamespaceInit(namespaceName), List.of(), source ) -- cgit v1.2.3