diff options
| author | Takashi Kokubun <takashikkbn@gmail.com> | 2023-04-27 14:27:51 -0700 |
|---|---|---|
| committer | Takashi Kokubun <takashikkbn@gmail.com> | 2023-04-27 14:27:51 -0700 |
| commit | f2c367734f847a7277f09c583a0476086313fdc9 (patch) | |
| tree | 85bf53b474fc652c2732e73f125c0521350f88a5 | |
| parent | 5cd4f35da634a33d993017bc0a9d82685201e8d4 (diff) | |
Introduce --enable-rjit=disasm
| -rw-r--r-- | configure.ac | 6 | ||||
| -rw-r--r-- | doc/rjit/README.md | 13 |
2 files changed, 15 insertions, 4 deletions
diff --git a/configure.ac b/configure.ac index f389942c98..6da801a5c3 100644 --- a/configure.ac +++ b/configure.ac @@ -3890,7 +3890,7 @@ AC_ARG_ENABLE(rjit, ) AS_CASE(["$RJIT_SUPPORT"], -[yes|dev], [ +[yes|dev|disasm], [ AS_CASE(["$RJIT_SUPPORT"], [dev], [ # Link libcapstone for --rjit-dump-disasm @@ -3898,6 +3898,10 @@ AS_CASE(["$RJIT_SUPPORT"], # Enable extra stats (vm_insns_count, ratio_in_rjit) AC_DEFINE(RJIT_STATS, 1) + ], + [disasm], [ + # Link libcapstone for --rjit-dump-disasm + AC_CHECK_LIB([capstone], [cs_disasm]) ]) AC_DEFINE(USE_RJIT, 1) diff --git a/doc/rjit/README.md b/doc/rjit/README.md index feac739b02..e3795e35b8 100644 --- a/doc/rjit/README.md +++ b/doc/rjit/README.md @@ -22,8 +22,14 @@ You may still manually pass `--enable-rjit` to try RJIT on unsupported platforms ### --enable-rjit=dev -`--enable-rjit=dev` makes the interpreter slower, but enables `vm_insns_count` and `ratio_in_rjit` -in `ruby --rjit-stats` to work. +It enables `--rjit-dump-disasm` if libcapstone is available. + +It also enables `vm_insns_count` and `ratio_in_rjit` in `--rjit-stats`. +However, it makes the interpreter a little slower. + +### --enable-rjit=disasm + +It enables `--rjit-dump-disasm` if libcapstone is available. ## make ### rjit-bindgen @@ -40,7 +46,8 @@ This prints RJIT stats at exit. Some stats are available only with `--enable-rji ### --rjit-dump-disasm -This dumps all JIT code. You need to install libcapstone before configure. +This dumps all JIT code. You need to install libcapstone before configure and use `--enable-rjit=dev` +or `--enable-rjit=disasm` on configure. * Ubuntu: `sudo apt-get install -y libcapstone-dev` * macOS: `brew install capstone` |
