Skip to content

Commit 3bad873

Browse files
committed
WIP
1 parent 03027dd commit 3bad873

File tree

3 files changed

+43
-39
lines changed

3 files changed

+43
-39
lines changed

.excludes-zjit

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
# ZJIT test exclusions
2+
# Tests that are currently known to fail with ZJIT enabled
3+
# Format: one test file per line, relative to repository root
4+
5+
test/ruby/test_env.rb
6+
test/ruby/test_enumerator.rb
7+
test/ruby/test_fiber.rb
8+
test/ruby/test_file_exhaustive.rb
9+
test/ruby/test_gc.rb
10+
test/ruby/test_io.rb
11+
test/ruby/test_keyword.rb
12+
test/ruby/test_marshal.rb
13+
test/ruby/test_memory_view.rb
14+
test/ruby/test_module.rb
15+
test/ruby/test_namespace.rb
16+
test/ruby/test_object.rb
17+
test/ruby/test_object_id.rb
18+
test/ruby/test_objectspace.rb
19+
test/ruby/test_optimization.rb
20+
test/ruby/test_parse.rb
21+
test/ruby/test_proc.rb
22+
test/ruby/test_process.rb
23+
test/ruby/test_ractor.rb
24+
test/ruby/test_rational.rb
25+
test/ruby/test_regexp.rb
26+
test/ruby/test_rubyoptions.rb
27+
test/ruby/test_settracefunc.rb
28+
test/ruby/test_super.rb
29+
test/ruby/test_struct.rb
30+
test/ruby/test_symbol.rb
31+
test/ruby/test_syntax.rb
32+
test/ruby/test_thread.rb
33+
test/ruby/test_time_tz.rb
34+
test/ruby/test_variable.rb
35+
test/ruby/test_vm_dump.rb
36+
test/ruby/test_yjit.rb

doc/zjit.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,12 +28,12 @@ in a way that can be easily shared with other team members.
2828

2929
Make sure you have a `--enable-zjit=dev` build, and run `brew install cargo-nextest` first.
3030

31-
### make zjit-test-suite
31+
### make zjit-check
3232

3333
This command runs all ZJIT tests: `make zjit-test-rust` and `test/ruby/test_zjit.rb`.
3434

3535
```
36-
make zjit-test-suite
36+
make zjit-check
3737
```
3838

3939
### make zjit-test-rust

zjit/zjit.mk

Lines changed: 5 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -48,40 +48,8 @@ update-zjit-bench:
4848
$(Q) $(tooldir)/git-refresh -C $(srcdir) --branch main \
4949
https://github.com/Shopify/zjit-bench zjit-bench $(GIT_OPTS)
5050

51-
# List of test files to exclude for ZJIT
52-
ZJIT_EXCLUDED_TESTS = \
53-
test/ruby/test_env.rb \
54-
test/ruby/test_enumerator.rb \
55-
test/ruby/test_fiber.rb \
56-
test/ruby/test_file_exhaustive.rb \
57-
test/ruby/test_gc.rb \
58-
test/ruby/test_io.rb \
59-
test/ruby/test_keyword.rb \
60-
test/ruby/test_marshal.rb \
61-
test/ruby/test_memory_view.rb \
62-
test/ruby/test_module.rb \
63-
test/ruby/test_namespace.rb \
64-
test/ruby/test_object.rb \
65-
test/ruby/test_object_id.rb \
66-
test/ruby/test_objectspace.rb \
67-
test/ruby/test_optimization.rb \
68-
test/ruby/test_parse.rb \
69-
test/ruby/test_proc.rb \
70-
test/ruby/test_process.rb \
71-
test/ruby/test_ractor.rb \
72-
test/ruby/test_rational.rb \
73-
test/ruby/test_regexp.rb \
74-
test/ruby/test_rubyoptions.rb \
75-
test/ruby/test_settracefunc.rb \
76-
test/ruby/test_super.rb \
77-
test/ruby/test_struct.rb \
78-
test/ruby/test_symbol.rb \
79-
test/ruby/test_syntax.rb \
80-
test/ruby/test_thread.rb \
81-
test/ruby/test_time_tz.rb \
82-
test/ruby/test_variable.rb \
83-
test/ruby/test_vm_dump.rb \
84-
test/ruby/test_yjit.rb
51+
# Load test files to exclude for ZJIT from .excludes-zjit file
52+
ZJIT_EXCLUDED_TESTS = $(shell grep -v '^\#' $(top_srcdir)/.excludes-zjit 2>/dev/null | grep -v '^$$')
8553

8654
# Get all test files in test/ruby directory
8755
ZJIT_ALL_RUBY_TESTS := $(wildcard $(top_srcdir)/test/ruby/test_*.rb $(top_srcdir)/test/ruby/*/test_*.rb)
@@ -92,16 +60,16 @@ ZJIT_RUBY_TESTS := $(filter-out $(addprefix $(top_srcdir)/,$(ZJIT_EXCLUDED_TESTS
9260
# Run all Ruby tests with ZJIT enabled (temporarily excluding known failing tests)
9361
.PHONY: zjit-test-ruby-all
9462
zjit-test-ruby-all:
95-
$(MAKE) test-all RUST_BACKTRACE=1 RUN_OPTS='--zjit --zjit-call-threshold=1' TESTS='../test/ruby/test_integer.rb'
63+
$(MAKE) test-all RUST_BACKTRACE=1 RUN_OPTS='--zjit --zjit-call-threshold=1' TESTS='$(ZJIT_RUBY_TESTS)'
9664

9765
# Run only the ZJIT-specific Ruby tests
9866
.PHONY: zjit-test-ruby
9967
zjit-test-ruby:
10068
$(MAKE) test-all TESTS='$(top_srcdir)/test/ruby/test_zjit.rb'
10169

10270
# Gives quick feedback about ZJIT. Not a replacement for a full test run.
103-
.PHONY: zjit-test-suite
104-
zjit-test-suite:
71+
.PHONY: zjit-check
72+
zjit-check:
10573
$(MAKE) zjit-test-rust
10674
$(MAKE) zjit-test-ruby
10775
ZJIT_BINDGEN_DIFF_OPTS =

0 commit comments

Comments
 (0)