Skip to content

Commit b6d3321

Browse files
committed
Enable YJIT in CI
We currently only test YJIT with StickyImmix.
1 parent 191c8db commit b6d3321

File tree

5 files changed

+21
-5
lines changed

5 files changed

+21
-5
lines changed

.github/scripts/ci-btest.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ cd $RUBY_BUILD_PATH
88

99
echo "============ Bootstrape tests (btest) ($DEBUG_LEVEL) ============="
1010
if test "$DEBUG_LEVEL" == "vanilla"; then
11-
make btest TESTOPTS="-v -j${CI_JOBS}"
11+
make btest TESTOPTS="-v -j${CI_JOBS} ${YJIT_OPTS}"
1212
else
1313
# Some test cases take too much time to run in debug mode, resulting in timeout. It is
1414
# because the default GC trigger (dynamic heap size) does not scale the heap size fast
@@ -26,5 +26,5 @@ else
2626
test_and_delete thread 400m
2727

2828
# Run other btests in the regular way.
29-
make btest RUN_OPTS="--mmtk-plan=$CHOSEN_PLAN" TESTOPTS="-v -j${CI_JOBS}"
29+
make btest RUN_OPTS="--mmtk-plan=$CHOSEN_PLAN" TESTOPTS="-v -j${CI_JOBS} ${YJIT_OPTS}"
3030
fi

.github/scripts/ci-test-all.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ case $DEBUG_LEVEL in
1313
;;
1414
release)
1515
make test-all \
16-
RUN_OPTS="--mmtk-plan=$CHOSEN_PLAN" \
16+
RUN_OPTS="--mmtk-plan=$CHOSEN_PLAN ${YJIT_OPTS}" \
1717
TESTOPTS="-v --excludes-dir=../test/.excludes-mmtk -j${CI_JOBS}"
1818
;;
1919
vanilla)

.github/scripts/common.sh

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,3 +10,8 @@ CI_JOBS=4
1010
if test -z "$CHOSEN_PLAN"; then
1111
CHOSEN_PLAN=$DEFAULT_PLAN
1212
fi
13+
14+
YJIT_OPTS=" "
15+
if test "$USE_YJIT" == "yes"; then
16+
YJIT_OPTS=" --yjit"
17+
fi

.github/workflows/main.yml

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,13 +33,24 @@ jobs:
3333
strategy:
3434
fail-fast: true
3535
matrix:
36+
special: ["normal"]
3637
debug-level: ["debug", "release"]
3738
plan: ["MarkSweep", "Immix", "StickyImmix"]
3839
include:
39-
- debug-level: vanilla
40+
- special: "special"
41+
debug-level: "vanilla"
42+
- special: "special"
43+
debug-level: "debug"
44+
plan: "StickyImmix"
45+
yjit: "yjit"
46+
- special: "special"
47+
debug-level: "release"
48+
plan: "StickyImmix"
49+
yjit: "yjit"
4050
env:
4151
DEBUG_LEVEL: ${{ matrix.debug-level }}
4252
CHOSEN_PLAN: ${{ matrix.plan }}
53+
USE_YJIT: ${{ matrix.yjit }}
4354
steps:
4455
- name: Checkout MMTk Ruby binding
4556
uses: actions/checkout@v4

mmtk/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ edition = "2021"
1212
# Metadata for the Ruby repository
1313
[package.metadata.ci-repos.ruby]
1414
repo = "mmtk/ruby" # This is used by actions/checkout, so the format is "owner/repo", not URL.
15-
rev = "e3be189efb1ddd31949519d9a7201abd7a62a0f2"
15+
rev = "64c07dcd7ca763e25607848df3be909135e02589"
1616

1717
[lib]
1818
name = "mmtk_ruby"

0 commit comments

Comments
 (0)