Closed Bug 855807 Opened 10 years ago Closed 10 years ago

When a parallel bailout occurs, don't invalidate innermost inlined script but rather inliner

Categories

(Core :: JavaScript Engine, defect)

22 Branch
x86
macOS
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla22

People

(Reporter: nmatsakis, Unassigned)

References

Details

Attachments

(1 file, 1 obsolete file)

The current code registers the innermost inlined script as the "aborted" script on a bailout.  But when we go to invalidate the aborted script, we then encounter assertion failures because the inlined script does not have any parallel IonScript associated with.  We instead want to register the "inliner" as the aborted script.
Attachment #730813 - Flags: review?(shu)
Comment on attachment 730813 [details] [diff] [review]
Take aborted script from entry block, not current

Review of attachment 730813 [details] [diff] [review]:
-----------------------------------------------------------------

::: js/src/ion/ParallelFunctions.cpp
@@ +208,5 @@
>      ForkJoinSlice *slice = ForkJoinSlice::Current();
>  
> +    Spew(SpewBailouts, "Parallel abort in %p:%s:%d (%d)",
> +         script, script->filename(), script->lineno,
> +         script->hasParallelIonScript());

It's just internal spew, but I'd prefer something more obvious than (%d) for a bool, because I'm probably going to forget what it means.

::: js/src/vm/ParallelDo.cpp
@@ +614,5 @@
>          JS_ASSERT(ok == !slice.abortedScript);
>          if (!ok) {
>              JSScript *script = slice.abortedScript;
> +            Spew(SpewBailouts, "Aborted script: %p (%d)",
> +                 script, script->hasParallelIonScript());

Ditto.
Attachment #730813 - Flags: review?(shu) → review+
Attachment #730813 - Attachment is obsolete: true
Attachment #730861 - Flags: review+
Blocks: PJS
I was not able to devise a good test for this failure other than manually clicking around the interactive mandelbrot, so I will simply commit the patch.
https://hg.mozilla.org/mozilla-central/rev/fef1ee969a61
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla22
You need to log in before you can comment on or make changes to this bug.