-
Notifications
You must be signed in to change notification settings - Fork 19
check.py: correct the jit-stats docstring, and re-record eight dynasm baselines #1019
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,8 +1,8 @@ | ||
| bridges_compiled=6 | ||
| bridges_compiled=4 | ||
| descr_set_absent=0 | ||
| descr_set_ambiguous=0 | ||
| descr_set_stale_absent=0 | ||
| guard_failures=1203 | ||
| guard_failures=802 | ||
| internal_compile_panics=0 | ||
| loops_aborted=1 | ||
| loops_aborted=0 | ||
| loops_compiled=2 |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,4 +1,4 @@ | ||
| bridges_compiled=2 | ||
| bridges_compiled=4 | ||
| descr_set_absent=0 | ||
| descr_set_ambiguous=0 | ||
| descr_set_stale_absent=0 | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,4 +1,4 @@ | ||
| bridges_compiled=0 | ||
| bridges_compiled=1 | ||
| descr_set_absent=0 | ||
| descr_set_ambiguous=0 | ||
| descr_set_stale_absent=0 | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,4 +1,4 @@ | ||
| bridges_compiled=3 | ||
| bridges_compiled=5 | ||
| descr_set_absent=0 | ||
| descr_set_ambiguous=0 | ||
| descr_set_stale_absent=0 | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,8 +1,8 @@ | ||
| bridges_compiled=10 | ||
| bridges_compiled=7 | ||
| descr_set_absent=0 | ||
| descr_set_ambiguous=0 | ||
| descr_set_stale_absent=0 | ||
| guard_failures=2018 | ||
| guard_failures=1655 | ||
| internal_compile_panics=0 | ||
| loops_aborted=1 | ||
| loops_aborted=0 | ||
| loops_compiled=4 |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,8 +1,8 @@ | ||
| bridges_compiled=4 | ||
| bridges_compiled=0 | ||
| descr_set_absent=0 | ||
| descr_set_ambiguous=0 | ||
| descr_set_stale_absent=0 | ||
| guard_failures=828 | ||
| guard_failures=1 | ||
| internal_compile_panics=0 | ||
| loops_aborted=10 | ||
| loops_compiled=2 |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -676,9 +676,12 @@ def _jit_stats_change(saved, current): | |
|
|
||
| A field missing from either side reads as "0", so a baseline recorded before | ||
| a counter existed still matches a run that reports it as 0, and adding an | ||
| invariant counter costs no re-record. The wasm [jit-stats] line reports only | ||
| the badness fields, so its baselines carry only those and stay equal on the | ||
| three it never prints.""" | ||
| invariant counter costs no re-record. The cost of that convenience is that a | ||
| field absent from BOTH sides compares equal forever: a backend whose | ||
| [jit-stats] line stops naming a counter disarms that counter's gate on every | ||
| one of its baselines, silently. Whenever a backend's line changes shape, | ||
| re-record its whole baseline surface rather than trusting the run that | ||
| follows.""" | ||
|
Comment on lines
+682
to
+684
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
When a backend stops emitting a counter whose saved value is nonzero, Useful? React with 👍 / 👎. |
||
| old_fields = _parse_jit_stats(saved) | ||
| new_fields = _parse_jit_stats(current) | ||
| changes = [ | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win
Qualify the missing-counter warning.
When
currentomits a field butsavedcontains a non-zero value,_jit_stats_changecompares that value with"0"and reports a change. The gate is silently disabled only when both snapshots omit the field, or when the saved value is already zero.Replace “disarms that counter’s gate on every one of its baselines” with wording that reflects this behavior.
Suggested wording
📝 Committable suggestion
🤖 Prompt for AI Agents