91162 Commits

Author SHA1 Message Date
Alan Wu
3f68bcdeb1 Explain libminiruby 2025-04-18 21:52:58 +09:00
Alan Wu
5925903e38 More about testing in zjit.md 2025-04-18 21:52:58 +09:00
Takashi Kokubun
d093793e6b Pass BTESTS to make properly 2025-04-18 21:52:58 +09:00
Takashi Kokubun
b3dca8d4fe Allow dumping SSA in multiple ways 2025-04-18 21:52:58 +09:00
Takashi Kokubun
fc03b7353d Start testing the actual JIT code on CI 2025-04-18 21:52:58 +09:00
Takashi Kokubun
6f3f69098b Drop redundant options in workflows 2025-04-18 21:52:58 +09:00
Takashi Kokubun
fa4eee51f1 Fix options in zjit.md 2025-04-18 21:52:58 +09:00
Takashi Kokubun
bc443eef7a Let ZJIT and YJIT disable each other 2025-04-18 21:52:58 +09:00
Takashi Kokubun
b0739cd1c1 Rename utils.rs to cast.rs
to avoid making it a place to put anything.
2025-04-18 21:52:58 +09:00
Takashi Kokubun
9cfb860cb3 Let tests share the same ZJITState::init()
to share the initialization of other globals in the future as well
2025-04-18 21:52:58 +09:00
Takashi Kokubun
d550a9b124 Initialize dummy globals for tests 2025-04-18 21:52:58 +09:00
Takashi Kokubun
e543b6a030 Start compiling the actual IR 2025-04-18 21:52:58 +09:00
Takashi Kokubun
5f3ebd44de Add a comment to dump the actual structs 2025-04-18 21:52:58 +09:00
Takashi Kokubun
de8d4c83d8 Add --zjit-dump-ssa option 2025-04-18 21:52:58 +09:00
Max Bernstein
24cb2f6045 Set up locals in FrameState at function entry 2025-04-18 21:52:58 +09:00
Max Bernstein
721b919e17 Fix test for setlocal and getlocal 2025-04-18 21:52:58 +09:00
Alan Wu
ed2ff3bb4c zjit-ubuntu: remove continue on error for make zjit-test. Passes now 2025-04-18 21:52:58 +09:00
Takashi Kokubun
fc256fb6be Skip a failing cargo test 2025-04-18 21:52:58 +09:00
Takashi Kokubun
43bb240bbd Disable stub code execution for now 2025-04-18 21:52:58 +09:00
Maxime Chevalier-Boisvert
6de43bdc31 Mention rubyexplorer 2025-04-18 21:52:58 +09:00
Maxime Chevalier-Boisvert
8caed38244 Add some basic documentation for ZJIT 2025-04-18 21:52:58 +09:00
Max Bernstein
7017e2ba77 Compile sample exception code in ZJIT 2025-04-18 21:52:58 +09:00
Max Bernstein
c35931b5d5 Remove unused function 2025-04-18 21:52:58 +09:00
Max Bernstein
d9d167423f Fix locals propagation across edges 2025-04-18 21:52:58 +09:00
Max Bernstein
3d7e88ce44 Clarify operand order in binops 2025-04-18 21:52:58 +09:00
Max Bernstein
94496cd862 Test setlocal/getlocal 2025-04-18 21:52:58 +09:00
Max Bernstein
f4dc402e79 Add assert_matches! macro 2025-04-18 21:52:58 +09:00
Alan Wu
95904e2092 reorder libminiruby link flags. Now works on aarch64 linux 2025-04-18 21:52:58 +09:00
Alan Wu
42c1434f9b put libminiruby next to zjit-test 2025-04-18 21:52:58 +09:00
Alan Wu
3fbb4b0953 zjit-test requires cargo 2025-04-18 21:52:58 +09:00
Takashi Kokubun
78d60548ef Allow failing zjit-test on Linux 2025-04-18 21:52:58 +09:00
Takashi Kokubun
daced753a5 Fix YJIT references in comments 2025-04-18 21:52:58 +09:00
Takashi Kokubun
fa9713d59c Drop cargo build jobs
It doesn't seem important to keep `cargo build`-only jobs. The zjit-test
task should be covering most of what we wanted in the job now.
2025-04-18 21:52:58 +09:00
Alan Wu
1ac465f858 copyedit comment 2025-04-18 21:52:58 +09:00
Alan Wu
ea932d8735 Fix s/test-zjit/zjit-test/ 2025-04-18 21:52:58 +09:00
Alan Wu
b3ff735b2a CI: get cargo-nextest 2025-04-18 21:52:58 +09:00
Alan Wu
5627121ef9 fix typo to actually test zjit in zjit-macos 2025-04-18 21:52:58 +09:00
Alan Wu
b19dce1fba ci blindshot for make test-zjit 2025-04-18 21:52:57 +09:00
Alan Wu
20ec3c8033 add make zjit-test 2025-04-18 21:52:57 +09:00
Alan Wu
b30c8ddfc7 cargo:rustc-link-lib=static:-bundle needs 1.63 2025-04-18 21:52:57 +09:00
Alan Wu
4326b0cece boot_vm boots and runs 2025-04-18 21:52:57 +09:00
Alan Wu
ea9b23a2cb can link and run p RubyVM::ISeq, hardcoded paths, needs more init 2025-04-18 21:52:57 +09:00
Takashi Kokubun
bcf5c1cdc4 Generate working putnil-leave using the backend 2025-04-18 21:52:57 +09:00
Takashi Kokubun
7447513509 Rename codegen.rs to state.rs
since it's only about ZJITState at the moment. Because it's no longer
called "CodegenGlobals", we don't have any reason to keep it in
codegen.rs.
2025-04-18 21:52:57 +09:00
Takashi Kokubun
05c451343f Set up a CI for Arm64 macOS too 2025-04-18 21:52:57 +09:00
Takashi Kokubun
71d4cb3a8b Fix cargo test 2025-04-18 21:52:57 +09:00
Takashi Kokubun
9c267256d8 Stub YJIT-specific implementations in the backend 2025-04-18 21:52:57 +09:00
Takashi Kokubun
e28ab5480e Copy yjit/src/backend to zjit/src/backend 2025-04-18 21:52:57 +09:00
Max Bernstein
a990368668 Format some push_insn code 2025-04-18 21:52:57 +09:00
Max Bernstein
25b357294c Re-work CFG queueing 2025-04-18 21:52:57 +09:00