Closed Bug 1118170 Opened 8 years ago Closed 8 years ago

Simplify GC after removing PJS

Categories

(Core :: JavaScript: GC, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla38

People

(Reporter: lth, Assigned: lth)

References

Details

Attachments

(1 file, 1 obsolete file)

Not yet sure what goes into this work, but at least these:

* ThreadSafeContext -> ExclusiveContext
* No more ForkJoinContext, Shu may have touched some bits here already
* No more isThreadLocal() testing
* Probably some things in the GC triggering machinery (callbacks to requestGC
  and requestZoneGC on the ForkJoinContext)

Also not sure how to stage this, but will probably put it on top of some of Shu's changes.
Attached patch WIP (obsolete) — Splinter Review
Probably roughly right but there are some outstanding issues.

(This patch contains a bunch of ugly hacks to files in vm/ that are there just to make things compile w/o ThreadSafeContext, while we're waiting for the removal of that.  Pls ignore.)
The thing that makes me most nervous here is that I've introduced an invariant that there are no empty arenas in the arena lists, since that was a facility added for PJS (IIUC).  I've changed code two places to handle that.

Other than that, adoptArenas remains but I have removed some comments that appeared to tie it to PJS.
Attachment #8544689 - Attachment is obsolete: true
Attachment #8545917 - Flags: review?(terrence)
Oh, btw, that patch sits on top of Shu's patch queue (bug 1118084 followed by bug 1118107, with some adjustments necessary).
Comment on attachment 8545917 [details] [diff] [review]
Remove the PJS bits in the GC

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

Great!

::: js/src/gc/Zone.h
@@ +29,1 @@
>  class Allocator

I believe that the entire Allocator thing was PJS, so we could probably rip even further.
Attachment #8545917 - Flags: review?(terrence) → review+
(In reply to Terrence Cole [:terrence] from comment #4)
> Comment on attachment 8545917 [details] [diff] [review]
> Remove the PJS bits in the GC
> 
> Review of attachment 8545917 [details] [diff] [review]:
> -----------------------------------------------------------------
> 
> Great!
> 
> ::: js/src/gc/Zone.h
> @@ +29,1 @@
> >  class Allocator
> 
> I believe that the entire Allocator thing was PJS, so we could probably rip
> even further.

I was wondering about that.  Will look into doing so, probably as a follow-up bug.
Blocks: 1119694
https://hg.mozilla.org/mozilla-central/rev/84d9dd565293
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla38
You need to log in before you can comment on or make changes to this bug.