Commit ffe2600
committed
ZJIT: globally remove duplicate CheckInterrupts
This also required updating the effects of Jump and CondBranch, since
`effects::Any` includes `InterruptFlag` (meaning the optimization would
never actually work across blocks).
```
ruby-master-zjit: ruby 4.1.0dev (2026-09-17T20:29:33Z master aca98ee) +ZJIT +PRISM [arm64-darwin25]
ruby-dev-zjit: ruby 4.1.0dev (2026-09-17T21:09:40Z hm-ukpqtuorkpnknmos 203f9cdd52) +ZJIT +PRISM [arm64-darwin25]
last_commit=ZJIT: globally remove duplicate CheckInterrupts
---------- --------------------- ------------------ --------------------- ------------------------------
bench ruby-master-zjit (ms) ruby-dev-zjit (ms) ruby-dev-zjit 1st itr ruby-master-zjit/ruby-dev-zjit
30k_ifelse 44.7 ± 2.8% 42.5 ± 2.7% 1.045 1.050
---------- --------------------- ------------------ --------------------- ------------------------------
```1 parent 9720769 commit ffe2600
2 files changed
Lines changed: 61 additions & 29 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1845 | 1845 | | |
1846 | 1846 | | |
1847 | 1847 | | |
1848 | | - | |
1849 | | - | |
| 1848 | + | |
| 1849 | + | |
1850 | 1850 | | |
1851 | 1851 | | |
1852 | 1852 | | |
| |||
7138 | 7138 | | |
7139 | 7139 | | |
7140 | 7140 | | |
7141 | | - | |
7142 | | - | |
7143 | | - | |
| 7141 | + | |
7144 | 7142 | | |
7145 | | - | |
7146 | | - | |
7147 | | - | |
7148 | | - | |
7149 | | - | |
7150 | | - | |
7151 | | - | |
7152 | | - | |
7153 | | - | |
7154 | | - | |
7155 | | - | |
| 7143 | + | |
| 7144 | + | |
| 7145 | + | |
| 7146 | + | |
| 7147 | + | |
| 7148 | + | |
| 7149 | + | |
| 7150 | + | |
| 7151 | + | |
| 7152 | + | |
| 7153 | + | |
| 7154 | + | |
| 7155 | + | |
| 7156 | + | |
| 7157 | + | |
| 7158 | + | |
| 7159 | + | |
| 7160 | + | |
| 7161 | + | |
| 7162 | + | |
| 7163 | + | |
| 7164 | + | |
| 7165 | + | |
| 7166 | + | |
| 7167 | + | |
| 7168 | + | |
| 7169 | + | |
| 7170 | + | |
| 7171 | + | |
| 7172 | + | |
| 7173 | + | |
| 7174 | + | |
| 7175 | + | |
| 7176 | + | |
| 7177 | + | |
| 7178 | + | |
| 7179 | + | |
| 7180 | + | |
| 7181 | + | |
| 7182 | + | |
| 7183 | + | |
| 7184 | + | |
| 7185 | + | |
| 7186 | + | |
| 7187 | + | |
| 7188 | + | |
| 7189 | + | |
| 7190 | + | |
| 7191 | + | |
| 7192 | + | |
| 7193 | + | |
| 7194 | + | |
| 7195 | + | |
| 7196 | + | |
| 7197 | + | |
| 7198 | + | |
| 7199 | + | |
| 7200 | + | |
7156 | 7201 | | |
7157 | | - | |
7158 | 7202 | | |
7159 | | - | |
7160 | | - | |
7161 | 7203 | | |
7162 | 7204 | | |
7163 | 7205 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
11963 | 11963 | | |
11964 | 11964 | | |
11965 | 11965 | | |
11966 | | - | |
11967 | 11966 | | |
11968 | 11967 | | |
11969 | 11968 | | |
11970 | | - | |
11971 | 11969 | | |
11972 | 11970 | | |
11973 | 11971 | | |
| |||
15659 | 15657 | | |
15660 | 15658 | | |
15661 | 15659 | | |
15662 | | - | |
15663 | 15660 | | |
15664 | 15661 | | |
15665 | 15662 | | |
| |||
15677 | 15674 | | |
15678 | 15675 | | |
15679 | 15676 | | |
15680 | | - | |
15681 | 15677 | | |
15682 | 15678 | | |
15683 | 15679 | | |
| |||
22054 | 22050 | | |
22055 | 22051 | | |
22056 | 22052 | | |
22057 | | - | |
22058 | 22053 | | |
22059 | 22054 | | |
22060 | | - | |
22061 | 22055 | | |
22062 | 22056 | | |
22063 | 22057 | | |
| |||
23453 | 23447 | | |
23454 | 23448 | | |
23455 | 23449 | | |
23456 | | - | |
23457 | 23450 | | |
23458 | 23451 | | |
23459 | 23452 | | |
| |||
23874 | 23867 | | |
23875 | 23868 | | |
23876 | 23869 | | |
23877 | | - | |
23878 | 23870 | | |
23879 | 23871 | | |
23880 | 23872 | | |
| |||
23890 | 23882 | | |
23891 | 23883 | | |
23892 | 23884 | | |
23893 | | - | |
23894 | 23885 | | |
23895 | 23886 | | |
23896 | 23887 | | |
| |||
23906 | 23897 | | |
23907 | 23898 | | |
23908 | 23899 | | |
23909 | | - | |
23910 | 23900 | | |
23911 | 23901 | | |
23912 | 23902 | | |
| |||
0 commit comments