aboutsummaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
authorGravatar zinc <zinc@downsta.ir> 2026-10-14 16:02:22 +0330
committerGravatar zinc <zinc@downsta.ir> 2026-10-14 16:02:22 +0330
commitb43d75a987836ee192d62e5c970cc16a143f8efd (patch)
tree206812e4462eb106da6dab9d2b4589b4da870f5a /README.md
parentmake: build zy with the llvm backend when an llvm with headers is found; NOLL... (diff)
make: keep the x86-64 jit by default (LLVM=1 opts in), record the llvm mode so switching rebuilds zy, check llvm with a test link
Diffstat (limited to 'README.md')
-rw-r--r--README.md2
1 files changed, 1 insertions, 1 deletions
diff --git a/README.md b/README.md
index c89ff50..63b0630 100644
--- a/README.md
+++ b/README.md
@@ -72,7 +72,7 @@ windows needs clang or gcc and powershell for the tests. the batch file is the s
### native backends
-on arm64, `src/core/core.c` uses its arm64 jit by default, and on x86-64 linux its x86-64 jit. other hosts use the interpreter. `-DZYINTERP` forces interpretation (`make build/bin/zyi` builds that core beside `zy`); `-DZYLLVM` enables the llvm backend when its headers and libraries are available. `make` builds `zy` with it whenever it finds an llvm with headers (`LLVM_CONFIG` if given, else `llvm-config`, else `llvm-config-19` on `PATH`; the gate is `llvm-c/Core.h`), prints a one-line note and builds without it otherwise, and `make NOLLVM=1` leaves it out. since `-DZYLLVM` replaces the x86-64 jit, use `NOLLVM=1` to keep that jit in `zy` on x86-64 linux. rebuild `zy` after changing either setting (`rm build/bin/zy` or `make clean`). direct builds from the root are:
+on arm64, `src/core/core.c` uses its arm64 jit by default, and on x86-64 linux its x86-64 jit. other hosts use the interpreter. `-DZYINTERP` forces interpretation (`make build/bin/zyi` builds that core beside `zy`); `-DZYLLVM` enables the llvm backend when its headers and libraries are available. on x86_64 hosts (`uname -m`) `make` keeps the x86-64 jit in `zy` and adds the llvm backend only with `make LLVM=1`, since `-DZYLLVM` replaces that jit; on other hosts `make` adds it whenever it finds a usable llvm, and `make NOLLVM=1` leaves it out. the llvm is `LLVM_CONFIG` if given, else `llvm-config`, else `llvm-config-19` on `PATH`, and it counts only when `llvm-c/Core.h` exists, `--libs` is not empty and a tiny test program links; otherwise the build prints a one-line note and goes on without it. the chosen mode is kept in `build/llvm.mode`, so switching rebuilds `zy` without `make clean`. direct builds from the root are:
```sh
make genome