aboutsummaryrefslogtreecommitdiff
path: root/src/test/java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2026-04-12 10:17:13 +0100
committerMichael Williamson <mike@zwobble.org>2026-04-12 10:17:13 +0100
commit8831821e326a14e57d08ed9b1c8da1e5e3f7cf9a (patch)
tree0f6304114d3513863227ef88901c46c8d7682da0 /src/test/java
parent1c6e2b6df2531c3c56644f1d7957a1e7a8e7fe00 (diff)
Make targets independent of specific backends
Diffstat (limited to 'src/test/java')
-rw-r--r--src/test/java/org/shedlang/compiler/backends/cranelift/PatioToCraneliftAmd64Tests.java6
-rw-r--r--src/test/java/org/shedlang/compiler/backends/cranelift/PatioToCraneliftTests.java8
-rw-r--r--src/test/java/org/shedlang/compiler/backends/llvm/PatioToAmd64Tests.java6
-rw-r--r--src/test/java/org/shedlang/compiler/backends/llvm/PatioToI686Tests.java6
-rw-r--r--src/test/java/org/shedlang/compiler/backends/llvm/PatioToLlvmTests.java9
-rw-r--r--src/test/java/org/shedlang/compiler/backends/llvm/codegen/PatioToLlvmFunctionContextTests.java6
-rw-r--r--src/test/java/org/shedlang/compiler/backends/wasm/PatioToWasm32Tests.java2
-rw-r--r--src/test/java/org/shedlang/compiler/backends/wasm/PatioToWasm64Tests.java2
-rw-r--r--src/test/java/org/shedlang/compiler/backends/wasm/PatioToWasmTests.java1
-rw-r--r--src/test/java/org/shedlang/compiler/backends/wasm/Wasm32ExampleTests.java1
-rw-r--r--src/test/java/org/shedlang/compiler/backends/wasm/Wasm64ExampleTests.java1
-rw-r--r--src/test/java/org/shedlang/compiler/backends/wasm/WasmTesting.java1
-rw-r--r--src/test/java/org/shedlang/compiler/backends/wasm/structure/binary/WasmBinaryFormatTesting.java2
13 files changed, 32 insertions, 19 deletions
diff --git a/src/test/java/org/shedlang/compiler/backends/cranelift/PatioToCraneliftAmd64Tests.java b/src/test/java/org/shedlang/compiler/backends/cranelift/PatioToCraneliftAmd64Tests.java
index c58e475c..e4095cad 100644
--- a/src/test/java/org/shedlang/compiler/backends/cranelift/PatioToCraneliftAmd64Tests.java
+++ b/src/test/java/org/shedlang/compiler/backends/cranelift/PatioToCraneliftAmd64Tests.java
@@ -1,12 +1,12 @@
package org.shedlang.compiler.backends.cranelift;
import org.junit.jupiter.api.Disabled;
-import org.shedlang.compiler.backends.llvm.LlvmTarget;
+import org.shedlang.compiler.backends.targets.NativeTarget;
@Disabled
public class PatioToCraneliftAmd64Tests extends PatioToCraneliftTests {
@Override
- protected LlvmTarget llvmTarget() {
- return LlvmTarget.AMD64;
+ protected NativeTarget target() {
+ return NativeTarget.AMD64;
}
}
diff --git a/src/test/java/org/shedlang/compiler/backends/cranelift/PatioToCraneliftTests.java b/src/test/java/org/shedlang/compiler/backends/cranelift/PatioToCraneliftTests.java
index 10f33a5e..dc7aea65 100644
--- a/src/test/java/org/shedlang/compiler/backends/cranelift/PatioToCraneliftTests.java
+++ b/src/test/java/org/shedlang/compiler/backends/cranelift/PatioToCraneliftTests.java
@@ -1,6 +1,6 @@
package org.shedlang.compiler.backends.cranelift;
-import org.shedlang.compiler.backends.llvm.LlvmTarget;
+import org.shedlang.compiler.backends.targets.NativeTarget;
import org.shedlang.compiler.backends.paths.PartialTargetPath;
import org.shedlang.compiler.patio.PatioCompilationUnit;
import org.shedlang.compiler.patio.PatioExampleTests;
@@ -47,7 +47,7 @@ public abstract class PatioToCraneliftTests extends PatioExampleTests {
Files.createDirectories(Path.of("tests-tmp"));
var workingDirectory = Files.createTempDirectory(Path.of("tests-tmp"), "PatioToCraneliftTests");
- var backend = CraneliftBackend.forTarget(this.llvmTarget());
+ var backend = CraneliftBackend.forTarget(this.target());
var objectFilePath = backend.compileCompilationUnit(
patio,
new PartialTargetPath(workingDirectory.resolve("main"))
@@ -55,7 +55,7 @@ public abstract class PatioToCraneliftTests extends PatioExampleTests {
var executablePath = workingDirectory.resolve("main");
- var runtime = ShedRuntime.defaultRuntime(LlvmTarget.AMD64.targetName());
+ var runtime = ShedRuntime.defaultRuntime(NativeTarget.AMD64.targetName());
backend.link(
List.of(
objectFilePath,
@@ -68,5 +68,5 @@ public abstract class PatioToCraneliftTests extends PatioExampleTests {
return TestProcessRunner.runCaptureOutput(List.of(executablePath.toString()));
}
- protected abstract LlvmTarget llvmTarget();
+ protected abstract NativeTarget target();
}
diff --git a/src/test/java/org/shedlang/compiler/backends/llvm/PatioToAmd64Tests.java b/src/test/java/org/shedlang/compiler/backends/llvm/PatioToAmd64Tests.java
index 472100e9..2170ab02 100644
--- a/src/test/java/org/shedlang/compiler/backends/llvm/PatioToAmd64Tests.java
+++ b/src/test/java/org/shedlang/compiler/backends/llvm/PatioToAmd64Tests.java
@@ -1,8 +1,10 @@
package org.shedlang.compiler.backends.llvm;
+import org.shedlang.compiler.backends.targets.NativeTarget;
+
public class PatioToAmd64Tests extends PatioToLlvmTests {
@Override
- protected LlvmTarget llvmTarget() {
- return LlvmTarget.AMD64;
+ protected NativeTarget target() {
+ return NativeTarget.AMD64;
}
}
diff --git a/src/test/java/org/shedlang/compiler/backends/llvm/PatioToI686Tests.java b/src/test/java/org/shedlang/compiler/backends/llvm/PatioToI686Tests.java
index cff521d3..7d80a768 100644
--- a/src/test/java/org/shedlang/compiler/backends/llvm/PatioToI686Tests.java
+++ b/src/test/java/org/shedlang/compiler/backends/llvm/PatioToI686Tests.java
@@ -1,8 +1,10 @@
package org.shedlang.compiler.backends.llvm;
+import org.shedlang.compiler.backends.targets.NativeTarget;
+
public class PatioToI686Tests extends PatioToLlvmTests {
@Override
- protected LlvmTarget llvmTarget() {
- return LlvmTarget.I686;
+ protected NativeTarget target() {
+ return NativeTarget.I686;
}
}
diff --git a/src/test/java/org/shedlang/compiler/backends/llvm/PatioToLlvmTests.java b/src/test/java/org/shedlang/compiler/backends/llvm/PatioToLlvmTests.java
index 9a11c648..0237becb 100644
--- a/src/test/java/org/shedlang/compiler/backends/llvm/PatioToLlvmTests.java
+++ b/src/test/java/org/shedlang/compiler/backends/llvm/PatioToLlvmTests.java
@@ -10,6 +10,7 @@ import org.shedlang.compiler.backends.llvm.ir.ast.operands.LlvmOperandInt;
import org.shedlang.compiler.backends.llvm.ir.ast.operands.LlvmVariableGlobal;
import org.shedlang.compiler.backends.llvm.ir.ast.types.LlvmTypes;
import org.shedlang.compiler.backends.paths.PartialTargetPath;
+import org.shedlang.compiler.backends.targets.NativeTarget;
import org.shedlang.compiler.patio.PatioCompilationUnit;
import org.shedlang.compiler.patio.PatioExampleTests;
import org.shedlang.compiler.runtime.ShedRuntime;
@@ -27,7 +28,7 @@ public abstract class PatioToLlvmTests extends PatioExampleTests {
protected ExecutionResult executeCompilationUnit(PatioCompilationUnit patio) throws IOException, InterruptedException {
var llvmModuleResult = PatioToLlvm.generateCompilationUnit(
patio,
- PatioToLlvmGlobalContext.empty(this.llvmTarget())
+ PatioToLlvmGlobalContext.empty(this.target())
);
var llvmModule = llvmModuleResult.value();
@@ -61,8 +62,8 @@ public abstract class PatioToLlvmTests extends PatioExampleTests {
var executablePath = workingDirectory.resolve("main");
- var runtime = ShedRuntime.defaultRuntime(llvmTarget().targetName());
- LlvmBackend.forTarget(this.llvmTarget()).link(
+ var runtime = ShedRuntime.defaultRuntime(target().targetName());
+ LlvmBackend.forTarget(this.target()).link(
List.of(
objectFilePath,
runtime.dir().resolve("libpatio_test.a")
@@ -74,5 +75,5 @@ public abstract class PatioToLlvmTests extends PatioExampleTests {
return TestProcessRunner.runCaptureOutput(List.of(executablePath.toString()));
}
- protected abstract LlvmTarget llvmTarget();
+ protected abstract NativeTarget target();
}
diff --git a/src/test/java/org/shedlang/compiler/backends/llvm/codegen/PatioToLlvmFunctionContextTests.java b/src/test/java/org/shedlang/compiler/backends/llvm/codegen/PatioToLlvmFunctionContextTests.java
index 7792519c..f6d31c46 100644
--- a/src/test/java/org/shedlang/compiler/backends/llvm/codegen/PatioToLlvmFunctionContextTests.java
+++ b/src/test/java/org/shedlang/compiler/backends/llvm/codegen/PatioToLlvmFunctionContextTests.java
@@ -1,7 +1,7 @@
package org.shedlang.compiler.backends.llvm.codegen;
import org.junit.jupiter.api.Test;
-import org.shedlang.compiler.backends.llvm.LlvmTarget;
+import org.shedlang.compiler.backends.targets.NativeTarget;
import org.shedlang.compiler.backends.llvm.ir.ast.LlvmIr;
import org.shedlang.compiler.backends.llvm.ir.ast.types.LlvmTypes;
@@ -15,7 +15,7 @@ import static org.zwobble.precisely.Matchers.isSequence;
public class PatioToLlvmFunctionContextTests {
@Test
public void whenThereAreNoInstructionsOutsideOfBasicBlockThenToBasicBlocksReturnsBasicBlocks() {
- var context = PatioToLlvmFunctionContext.of(PatioToLlvmModuleContext.empty(LlvmTarget.AMD64));
+ var context = PatioToLlvmFunctionContext.of(PatioToLlvmModuleContext.empty(NativeTarget.AMD64));
var addInstruction = LlvmIr.add(
LlvmIr.variableLocal("a"),
LlvmTypes.INT_64,
@@ -35,7 +35,7 @@ public class PatioToLlvmFunctionContextTests {
@Test
public void whenThereAreInstructionsOutsideOfBasicBlockThenToBasicBlocksThrowsException() {
- var context = PatioToLlvmFunctionContext.of(PatioToLlvmModuleContext.empty(LlvmTarget.AMD64));
+ var context = PatioToLlvmFunctionContext.of(PatioToLlvmModuleContext.empty(NativeTarget.AMD64));
var addInstruction = LlvmIr.add(
LlvmIr.variableLocal("a"),
LlvmTypes.INT_64,
diff --git a/src/test/java/org/shedlang/compiler/backends/wasm/PatioToWasm32Tests.java b/src/test/java/org/shedlang/compiler/backends/wasm/PatioToWasm32Tests.java
index 44626dca..1e630963 100644
--- a/src/test/java/org/shedlang/compiler/backends/wasm/PatioToWasm32Tests.java
+++ b/src/test/java/org/shedlang/compiler/backends/wasm/PatioToWasm32Tests.java
@@ -1,5 +1,7 @@
package org.shedlang.compiler.backends.wasm;
+import org.shedlang.compiler.backends.targets.WasmTarget;
+
public class PatioToWasm32Tests extends PatioToWasmTests {
@Override
protected WasmTarget wasmTarget() {
diff --git a/src/test/java/org/shedlang/compiler/backends/wasm/PatioToWasm64Tests.java b/src/test/java/org/shedlang/compiler/backends/wasm/PatioToWasm64Tests.java
index d73bf2c8..c11a0e3e 100644
--- a/src/test/java/org/shedlang/compiler/backends/wasm/PatioToWasm64Tests.java
+++ b/src/test/java/org/shedlang/compiler/backends/wasm/PatioToWasm64Tests.java
@@ -1,5 +1,7 @@
package org.shedlang.compiler.backends.wasm;
+import org.shedlang.compiler.backends.targets.WasmTarget;
+
public class PatioToWasm64Tests extends PatioToWasmTests {
@Override
protected WasmTarget wasmTarget() {
diff --git a/src/test/java/org/shedlang/compiler/backends/wasm/PatioToWasmTests.java b/src/test/java/org/shedlang/compiler/backends/wasm/PatioToWasmTests.java
index 946c49fb..833defa4 100644
--- a/src/test/java/org/shedlang/compiler/backends/wasm/PatioToWasmTests.java
+++ b/src/test/java/org/shedlang/compiler/backends/wasm/PatioToWasmTests.java
@@ -1,5 +1,6 @@
package org.shedlang.compiler.backends.wasm;
+import org.shedlang.compiler.backends.targets.WasmTarget;
import org.shedlang.compiler.backends.wasm.structure.WasmBinaryFormat;
import org.shedlang.compiler.backends.wasm.structure.ast.instructions.WasmCall;
import org.shedlang.compiler.backends.wasm.structure.ast.instructions.WasmExpression;
diff --git a/src/test/java/org/shedlang/compiler/backends/wasm/Wasm32ExampleTests.java b/src/test/java/org/shedlang/compiler/backends/wasm/Wasm32ExampleTests.java
index 06c1b040..4c257e1b 100644
--- a/src/test/java/org/shedlang/compiler/backends/wasm/Wasm32ExampleTests.java
+++ b/src/test/java/org/shedlang/compiler/backends/wasm/Wasm32ExampleTests.java
@@ -2,6 +2,7 @@ package org.shedlang.compiler.backends.wasm;
import org.shedlang.compiler.backends.Backend;
import org.shedlang.compiler.backends.ExampleTests;
+import org.shedlang.compiler.backends.targets.WasmTarget;
import java.util.List;
import java.util.Set;
diff --git a/src/test/java/org/shedlang/compiler/backends/wasm/Wasm64ExampleTests.java b/src/test/java/org/shedlang/compiler/backends/wasm/Wasm64ExampleTests.java
index fdc1cf28..04e1d08c 100644
--- a/src/test/java/org/shedlang/compiler/backends/wasm/Wasm64ExampleTests.java
+++ b/src/test/java/org/shedlang/compiler/backends/wasm/Wasm64ExampleTests.java
@@ -2,6 +2,7 @@ package org.shedlang.compiler.backends.wasm;
import org.shedlang.compiler.backends.Backend;
import org.shedlang.compiler.backends.ExampleTests;
+import org.shedlang.compiler.backends.targets.WasmTarget;
import java.util.List;
import java.util.Set;
diff --git a/src/test/java/org/shedlang/compiler/backends/wasm/WasmTesting.java b/src/test/java/org/shedlang/compiler/backends/wasm/WasmTesting.java
index f4f86440..d437b56a 100644
--- a/src/test/java/org/shedlang/compiler/backends/wasm/WasmTesting.java
+++ b/src/test/java/org/shedlang/compiler/backends/wasm/WasmTesting.java
@@ -1,6 +1,7 @@
package org.shedlang.compiler.backends.wasm;
import org.pcollections.PVector;
+import org.shedlang.compiler.backends.targets.WasmTarget;
import org.shedlang.compiler.filesystem.ShedCompilerFiles;
import org.shedlang.compiler.util.P;
diff --git a/src/test/java/org/shedlang/compiler/backends/wasm/structure/binary/WasmBinaryFormatTesting.java b/src/test/java/org/shedlang/compiler/backends/wasm/structure/binary/WasmBinaryFormatTesting.java
index 61e7eba1..60213f81 100644
--- a/src/test/java/org/shedlang/compiler/backends/wasm/structure/binary/WasmBinaryFormatTesting.java
+++ b/src/test/java/org/shedlang/compiler/backends/wasm/structure/binary/WasmBinaryFormatTesting.java
@@ -1,6 +1,6 @@
package org.shedlang.compiler.backends.wasm.structure.binary;
-import org.shedlang.compiler.backends.wasm.WasmTarget;
+import org.shedlang.compiler.backends.targets.WasmTarget;
import org.shedlang.compiler.backends.wasm.structure.ast.modules.WasmModule;
import org.shedlang.compiler.testing.TestProcessRunner;
import org.shedlang.compiler.util.P;