summaryrefslogtreecommitdiff
path: root/chapter21/src
diff options
context:
space:
mode:
authorCliff Click <cliffc@acm.org>2025-04-11 19:35:53 -0700
committerCliff Click <cliffc@acm.org>2025-04-11 19:35:53 -0700
commit81985bd73393c95b34334b5b57613873ffad95ae (patch)
tree8f71675ff04dd01673c9f4fc0620948e69b08080 /chapter21/src
parent62f94ffd6020a6cb45ea7ee0bdf1f5295977f1b1 (diff)
downloadSimple-81985bd73393c95b34334b5b57613873ffad95ae.tar.gz
Simple-81985bd73393c95b34334b5b57613873ffad95ae.zip
One more try for CI
Diffstat (limited to 'chapter21/src')
-rw-r--r--chapter21/src/main/java/com/seaofnodes/simple/codegen/Encoding.java2
-rw-r--r--chapter21/src/main/java/com/seaofnodes/simple/node/cpus/x86_64_v2/NewX86.java3
-rw-r--r--chapter21/src/test/java/com/seaofnodes/simple/TestC.java1
3 files changed, 5 insertions, 1 deletions
diff --git a/chapter21/src/main/java/com/seaofnodes/simple/codegen/Encoding.java b/chapter21/src/main/java/com/seaofnodes/simple/codegen/Encoding.java
index 2a1087a0..48b9ea5f 100644
--- a/chapter21/src/main/java/com/seaofnodes/simple/codegen/Encoding.java
+++ b/chapter21/src/main/java/com/seaofnodes/simple/codegen/Encoding.java
@@ -21,7 +21,7 @@ import java.util.*;
public class Encoding {
// Top-level program graph structure
- final CodeGen _code;
+ public final CodeGen _code;
// Instruction bytes. The registers are encoded already. Relocatable data
// is in a fixed format depending on the kind of relocation.
diff --git a/chapter21/src/main/java/com/seaofnodes/simple/node/cpus/x86_64_v2/NewX86.java b/chapter21/src/main/java/com/seaofnodes/simple/node/cpus/x86_64_v2/NewX86.java
index 01faba52..5b17e850 100644
--- a/chapter21/src/main/java/com/seaofnodes/simple/node/cpus/x86_64_v2/NewX86.java
+++ b/chapter21/src/main/java/com/seaofnodes/simple/node/cpus/x86_64_v2/NewX86.java
@@ -27,6 +27,9 @@ public class NewX86 extends NewNode implements MachNode {
@Override public RegMask killmap() { return x86_64_v2.x86CallerSave(); }
@Override public void encoding( Encoding enc ) {
+
+ System.err.println("OS: "+OS+", arg2="+ARG2+", arg3="+ARG3+", compiled for "+enc._code._callingConv);
+
enc.external(this,"calloc");
// This has to call the *native* ABI, irregardless of how Simple is
// being compiled, because it links against the native calloc.
diff --git a/chapter21/src/test/java/com/seaofnodes/simple/TestC.java b/chapter21/src/test/java/com/seaofnodes/simple/TestC.java
index 2d908699..f51b7adb 100644
--- a/chapter21/src/test/java/com/seaofnodes/simple/TestC.java
+++ b/chapter21/src/test/java/com/seaofnodes/simple/TestC.java
@@ -46,6 +46,7 @@ public abstract class TestC {
}
static void _run( String src, String simple_conv, String c_conv, String cfile, String efile, String xtn, String expected ) throws IOException {
+ System.err.println("Compiling "+cfile+" on "+OS+" for "+c_conv);
String bin = efile+xtn;
String obj = bin+".o";
// Compile simple, emit ELF