Closed
Bug 825966
Opened 13 years ago
Closed 13 years ago
JM: JSOP_CASE/JSOP_DEFAULT targets not marked as safepoint
Categories
(Core :: JavaScript Engine, defect)
Core
JavaScript Engine
Tracking
()
RESOLVED
FIXED
mozilla20
People
(Reporter: jandem, Assigned: jandem)
References
Details
Attachments
(2 files)
|
3.08 KB,
patch
|
bhackett1024
:
review+
|
Details | Diff | Splinter Review |
|
2.10 KB,
patch
|
bhackett1024
:
review+
|
Details | Diff | Splinter Review |
This is causing a jit-test failure with my patch for bug 825892.
| Assignee | ||
Comment 1•13 years ago
|
||
Attachment #697074 -
Flags: review?(bhackett1024)
| Assignee | ||
Comment 2•13 years ago
|
||
This matches what we do for TABLESWITCH and LOOKUPSWITCH cases and fixes the testcase.
Attachment #697079 -
Flags: review?(bhackett1024)
Updated•13 years ago
|
Attachment #697074 -
Flags: review?(bhackett1024) → review+
Comment 3•13 years ago
|
||
Comment on attachment 697079 [details] [diff] [review]
Part 2: Mark CASE/DEFAULT target as safepoint
Review of attachment 697079 [details] [diff] [review]:
-----------------------------------------------------------------
Hmm, this is pretty strange as the reason we mark safepoints for tableswitch targets is that they can be indirectly branched to (via the dispatch table) and need a consistent synced register state. CASE/DEFAULT though are just dressed up branches and gotos, so seem like they should be handled by the existing machinery for such jumps. Moreover, we already need to handle CASE/DEFAULT for unoptimizable switches even without the bug 825892 patch, so this suggests either there is a preexisting problem with the handling of these opcodes or that there is a bug in the bug 825892 patch. How does this test fail without the patch?
| Assignee | ||
Comment 4•13 years ago
|
||
(In reply to Brian Hackett (:bhackett) from comment #3)
> Moreover, we already need to handle
> CASE/DEFAULT for unoptimizable switches even without the bug 825892 patch,
> so this suggests either there is a preexisting problem with the handling of
> these opcodes or that there is a bug in the bug 825892 patch. How does this
> test fail without the patch?
Yeah, it's a preexisting problem. It's the same bug you fixed for LOOKUPSWITCH in bug 751320, if you tweak jit-test/tests/jaeger/bug751320.js so that it uses CONDSWITCH (add a "case Math:") it fails without the patch for bug 825892. Would you mind taking a look?
Comment 5•13 years ago
|
||
Comment on attachment 697079 [details] [diff] [review]
Part 2: Mark CASE/DEFAULT target as safepoint
Review of attachment 697079 [details] [diff] [review]:
-----------------------------------------------------------------
OK, thanks for the explanation.
Attachment #697079 -
Flags: review?(bhackett1024) → review+
| Assignee | ||
Comment 6•13 years ago
|
||
Comment 7•13 years ago
|
||
https://hg.mozilla.org/mozilla-central/rev/a5b2384539cd
https://hg.mozilla.org/mozilla-central/rev/ae47afdbb7d1
Status: ASSIGNED → RESOLVED
Closed: 13 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla20
You need to log in
before you can comment on or make changes to this bug.
Description
•