GC: generational GC does not need to terminate off-main-thread compilation

RESOLVED FIXED in mozilla25

Status

()

defect
RESOLVED FIXED
6 years ago
7 months ago

People

(Reporter: terrence, Assigned: jandem)

Tracking

(Blocks 1 bug)

Trunk
mozilla25
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

This should be a tremendous and easy perf win.
Posted patch PatchSplinter Review
As discussed on IRC.
Assignee: general → jdemooij
Status: NEW → ASSIGNED
Attachment #767796 - Flags: review?(terrence)
Comment on attachment 767796 [details] [diff] [review]
Patch

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

\o/  Excellent!

r=me

::: js/src/gc/StoreBuffer.h
@@ -216,5 @@
>              if (!pos)
>                  return;
>  
>              /* Check for overflow. */
> -            if (top - pos < (unsigned)(sizeof(unsigned) + sizeof(T))) {

Huh, I thought I fixed this at some point. I guess that patch never landed. In any case, thanks for the spot-fix!

::: js/src/ion/Ion.cpp
@@ +378,5 @@
>  {
> +    // Cancel any active or pending off thread compilations. Note that the
> +    // MIR graph does not hold any nursery pointers, so there's no need to
> +    // do this for minor GCs.
> +    JS_ASSERT(!trc->runtime->isHeapMinorCollecting());

Nice!
Attachment #767796 - Flags: review?(terrence) → review+
https://hg.mozilla.org/mozilla-central/rev/1060593e6796
Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla25
Blocks: 1507445
You need to log in before you can comment on or make changes to this bug.