gecko-dev/js
Nicholas D. Matsakis 3a0845deea Bug 807480 - Add Rooted<T> roots to PerThread state. r=luke
Currently there are a number of global fields in JSRuntime* which are basically
tracking per-thread state.  This makes sense on the current trunk since there
is only ever a single thread associated with a runtime, but as Parallel JS (nee
Rivertrail) starts to land this assumption no longer holds.

This patch makes a struct, currently called |JS::PerThreadData|, that stores
per-thread data from the runtime.  There is one instance of this struct
embedded in "Runtime" itself (the field |mainThread|).  For now I have only
migrated the debug GC fields into |PerThread|, those are the ones causing me
immediate pain.  Eventually more fields will want to move into there.

The eventual goal is to distinguish thread-safe code, which will take as
argument a |JS::PerThread*|, from non-thread-safe code, which will take a
|JSRuntime*| or |JSContext*|.
2012-11-06 22:32:01 -05:00
..
ductwork/debugger Bug 798491: Add an option to stick all chrome JSMs/JS components in the same compartment. r=mrbkap,philikon 2012-10-31 09:13:28 -07:00
examples Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
ipc Bug 791322 - Move Rooted to js:: namespace; r=billm 2012-09-24 18:08:22 -07:00
jsd Bug 787856 - Convert JS_GetPrototype to support lazy protos (r=bhackett) 2012-09-03 16:42:17 -07:00
public Bug 792085. Fix js build on ppc, broken since ionmonkey merge. r=dvander 2012-11-06 19:50:19 +01:00
src Bug 807480 - Add Rooted<T> roots to PerThread state. r=luke 2012-11-06 22:32:01 -05:00
xpconnect Bug 808730 - Implement the 'IfFound' parent of ReparentWrapperIfFound. r=mrbkap 2012-11-06 17:56:49 -08:00