aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2023-06-17 20:47:40 +0100
committerMichael Williamson <mike@zwobble.org>2023-06-17 20:47:40 +0100
commit58518a3050506d13aed75db159f564db59874581 (patch)
tree9e9b1fd1da6d16fb59732df3a4fb495396653808 /src/main/java
parentfa32264f4807c40172f524b9a35d2e2019edc7c2 (diff)
Use opaque ptr in inttoptr instructions
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/org/shedlang/compiler/backends/llvm/LlvmCompilerClosures.java3
-rw-r--r--src/main/java/org/shedlang/compiler/backends/llvm/ir/LlvmIrSerializer.java3
-rw-r--r--src/main/java/org/shedlang/compiler/backends/llvm/ir/ast/instructions/LlvmIntToPtr.java3
3 files changed, 3 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 518f4fce..5c23da3f 100644
--- a/src/main/java/org/shedlang/compiler/backends/llvm/LlvmCompilerClosures.java
+++ b/src/main/java/org/shedlang/compiler/backends/llvm/LlvmCompilerClosures.java
@@ -110,8 +110,7 @@ public class LlvmCompilerClosures {
context = context.addInstruction(new LlvmIntToPtr(
closurePointer,
LlvmCompilerTypes.VALUE_TYPE,
- value,
- CALLABLE_TYPES.closurePointer()
+ value
));
return context.toResult(closurePointer);
diff --git a/src/main/java/org/shedlang/compiler/backends/llvm/ir/LlvmIrSerializer.java b/src/main/java/org/shedlang/compiler/backends/llvm/ir/LlvmIrSerializer.java
index dd4e2cf1..a12165a0 100644
--- a/src/main/java/org/shedlang/compiler/backends/llvm/ir/LlvmIrSerializer.java
+++ b/src/main/java/org/shedlang/compiler/backends/llvm/ir/LlvmIrSerializer.java
@@ -70,8 +70,7 @@ public class LlvmIrSerializer {
serializeType(intToPtr.sourceType(), builder);
builder.append(" ");
serializeOperand(intToPtr.value(), builder);
- builder.append(" to ");
- serializeType(intToPtr.targetType(), builder);
+ builder.append(" to ptr");
}
case LlvmLoad load -> {
serializeVariable(load.target(), builder);
diff --git a/src/main/java/org/shedlang/compiler/backends/llvm/ir/ast/instructions/LlvmIntToPtr.java b/src/main/java/org/shedlang/compiler/backends/llvm/ir/ast/instructions/LlvmIntToPtr.java
index 9c2de8d0..5d55a9f8 100644
--- a/src/main/java/org/shedlang/compiler/backends/llvm/ir/ast/instructions/LlvmIntToPtr.java
+++ b/src/main/java/org/shedlang/compiler/backends/llvm/ir/ast/instructions/LlvmIntToPtr.java
@@ -8,7 +8,6 @@ import org.shedlang.compiler.backends.llvm.ir.ast.types.LlvmTypeScalar;
public record LlvmIntToPtr(
LlvmVariable target,
LlvmTypeScalar sourceType,
- LlvmOperand value,
- LlvmTypePointer targetType
+ LlvmOperand value
) implements LlvmInstruction {
}