diff options
Diffstat (limited to 'src/main/java')
| -rw-r--r-- | src/main/java/org/shedlang/compiler/backends/llvm/LlvmCompilerClosures.java | 12 | ||||
| -rw-r--r-- | src/main/java/org/shedlang/compiler/backends/llvm/LlvmCompilerLocalVariableSpace.java | 1 |
2 files changed, 7 insertions, 6 deletions
diff --git a/src/main/java/org/shedlang/compiler/backends/llvm/LlvmCompilerClosures.java b/src/main/java/org/shedlang/compiler/backends/llvm/LlvmCompilerClosures.java index 8e17ea1b..da60ea7a 100644 --- a/src/main/java/org/shedlang/compiler/backends/llvm/LlvmCompilerClosures.java +++ b/src/main/java/org/shedlang/compiler/backends/llvm/LlvmCompilerClosures.java @@ -323,14 +323,14 @@ public class LlvmCompilerClosures { Types closureTypes, LlvmCompilerContext context ) { - var closureEnvironmentPointerResult = context.generateVariableLocal( - LlvmCompilerLocalVariableSpace.CLOSURE_ENVIRONMENT_POINTER + var freeVariablePointerResult = context.generateVariableLocal( + LlvmCompilerLocalVariableSpace.CLOSURE_FREE_VARIABLE_POINTER ); - var closureEnvironmentPointer = closureEnvironmentPointerResult.value(); - context = closureEnvironmentPointerResult.context(); + var freeVariablePointer = freeVariablePointerResult.value(); + context = freeVariablePointerResult.context(); context = context.addInstruction(new LlvmGetElementPtr( - closureEnvironmentPointer, + freeVariablePointer, closureTypes.closurePointer(), closurePointer, List.of( @@ -340,6 +340,6 @@ public class LlvmCompilerClosures { ) )); - return context.toResult(closureEnvironmentPointer); + return context.toResult(freeVariablePointer); } } diff --git a/src/main/java/org/shedlang/compiler/backends/llvm/LlvmCompilerLocalVariableSpace.java b/src/main/java/org/shedlang/compiler/backends/llvm/LlvmCompilerLocalVariableSpace.java index 32089fbc..511e24f4 100644 --- a/src/main/java/org/shedlang/compiler/backends/llvm/LlvmCompilerLocalVariableSpace.java +++ b/src/main/java/org/shedlang/compiler/backends/llvm/LlvmCompilerLocalVariableSpace.java @@ -6,6 +6,7 @@ public enum LlvmCompilerLocalVariableSpace { CLOSURE_FUNCTION_POINTER("closureFunctionPointer"), CLOSURE_FUNCTION_POINTER_POINTER("closureFunctionPointerPointer"), CLOSURE_ENVIRONMENT_POINTER("closureEnvironmentPointer"), + CLOSURE_FREE_VARIABLE_POINTER("closureFreeVariablePointer"), FIELD_POINTER("fieldPointer"), SIZE_PTR("sizePtr"), SIZE("size"), |
