summaryrefslogtreecommitdiff
path: root/chapter25
diff options
context:
space:
mode:
authorCliff Click <cliffc@acm.org>2026-10-01 09:25:04 -0700
committerCliff Click <cliffc@acm.org>2026-10-01 09:25:04 -0700
commitbf7f603dd4e8ec781fe578243cdc18180322420b (patch)
tree5e562d62acc1d9e6aca3f314fe08e38499052daa /chapter25
parent5e3dc0a228cfe7c0c15f3d94d8d6a45e4704787a (diff)
downloadSimple-bf7f603dd4e8ec781fe578243cdc18180322420b.tar.gz
Simple-bf7f603dd4e8ec781fe578243cdc18180322420b.zip
Fix CI
Diffstat (limited to 'chapter25')
-rw-r--r--chapter25/Makefile2
-rw-r--r--chapter25/src/test/java/com/seaofnodes/simple/Chapter21Test.java2
-rw-r--r--chapter25/src/test/java/com/seaofnodes/simple/Chapter25Test.java5
3 files changed, 4 insertions, 5 deletions
diff --git a/chapter25/Makefile b/chapter25/Makefile
index fb71fc6b..14a4c2a2 100644
--- a/chapter25/Makefile
+++ b/chapter25/Makefile
@@ -146,7 +146,7 @@ $(CLZDIR)/test/.ttag: $(test_javas) $(CLZDIR)/main/.mtag
OBJS:= build/objs
SYS_SMPS:= $(wildcard src/main/smp/*.smp src/main/smp/*/*.smp src/main/smp/*/*/*.smp)
CPU_PORT:= x86_64_v2
-CALL_CONV:= win64
+CALL_CONV:= $(if $(filter Windows_NT,$(OS)),win64,SystemV)
CPU_ABI:= $(CPU_PORT)_$(CALL_CONV)
RELEASE:= build/release
TEST_SYS:= $(OBJS)/lib_$(CPU_ABI)/sys.o
diff --git a/chapter25/src/test/java/com/seaofnodes/simple/Chapter21Test.java b/chapter25/src/test/java/com/seaofnodes/simple/Chapter21Test.java
index 08da0654..a400dc5f 100644
--- a/chapter25/src/test/java/com/seaofnodes/simple/Chapter21Test.java
+++ b/chapter25/src/test/java/com/seaofnodes/simple/Chapter21Test.java
@@ -424,7 +424,7 @@ val test_sqrt = { flt x ->
}
};
""";
- TestC.runC(src, "newtonFloat", result, 42);
+ TestC.runC(src, "newtonFloat", result, TestC.CALL_CONVENTION.equals("win64") ? 42 : 34);
EvalRisc5 R5 = TestRisc5.build( src, "test_sqrt", 0, 10, false);
R5.fregs[riscv.FA0 - riscv.F_OFFSET] = 3.0;
diff --git a/chapter25/src/test/java/com/seaofnodes/simple/Chapter25Test.java b/chapter25/src/test/java/com/seaofnodes/simple/Chapter25Test.java
index 346c503a..7158ace0 100644
--- a/chapter25/src/test/java/com/seaofnodes/simple/Chapter25Test.java
+++ b/chapter25/src/test/java/com/seaofnodes/simple/Chapter25Test.java
@@ -98,7 +98,7 @@ public class Chapter25Test {
new CodeGen(root.toString(),root.toString(),imported ? paths : null,"Main",src,126,true,TypeInteger.BOT)
.driver(TestC.CPU_PORT,TestC.CALL_CONVENTION,false,false);
assertEquals("",TestC.gcc(root+"/Main.o","",TestC.C_DRIVERS_DIR+"extern_data_import.c",
- (String)null,new Ary<>(new String[]{dir+"/Globals.o"}),root+"/main"+(TestC.OS.startsWith("Windows") ? ".exe" : "")));
+ (String)null,new Ary<>(new String[]{dir+"/Globals.o"}),root+"/program"+(TestC.OS.startsWith("Windows") ? ".exe" : "")));
}
}
@@ -364,8 +364,7 @@ public class Chapter25Test {
String syms = run(new String[]{"nm",obj});
assertTrue(syms, syms.contains(" U sys.io.p_noInline"));
- String out = run(new String[]{"gcc",obj,SYS_FILE.toString(),TestC.runtimeObject(),"-lm","-g","-o",exe});
- assertEquals("",out);
+ TestC.linkExe(obj,null,null,new Ary<>(new String[]{SYS_FILE.toString()}),exe);
String rez = run(new String[]{exe});
assertEquals(expected,rez);
}