Terrence Cole
e884c28bf9
Bug 734196 - Updating the private pointer should not recurse when marking; r=billm
...
The private pointer is the only pointer update during GC marking that can invoke
unrelated code. If this code triggers a write barrier, then this will recurse.
This patch adds a way to update private pointers without triggering a barrier,
explicitly for use by the GC during marking.
2012-03-08 15:05:21 -08:00
Igor Bukanov
553cbdfc40
bug 730234 - remove GC locking from activities, operation callbacks-related code and for code that accesses the JSContext list. r=luke
2012-02-24 12:03:28 +01:00
Bobby Holley
53efbc78aa
Bug 731804 - nsXPCWrappedJSClass::GetNamedPropertyAsVariant should jsvalify strings _after_ changing compartments. r=peterv
2012-03-08 11:13:34 -08:00
Bill McCloskey
4f3a1a6f62
Bug 730447 - Create a GC counter for malloc bytes (r=gregor)
2012-03-07 18:07:41 -08:00
Adam
8546c08abd
Make "let" a reserved word for Web scripts. Bug 730139, r=jorendorff.
2012-03-02 18:28:29 -06:00
Jan de Mooij
1608dc1de3
Bug 732423 - Combine GETELEM and CALLELEM interpreter cases and fix some e4x/noSuchMethod bugs. r=bhackett
2012-03-08 12:18:27 +01:00
Mike Hommey
09cbaacf5a
Fixup for bug 603370. Re-sync build/autoconf/expandlibs.m4 with js/src
2012-03-08 09:15:51 +01:00
Mike Hommey
f955d8086e
Bug 603370 - Avoid Identical Code Folding messing with symbol reordering. r=khuey
2012-03-08 08:56:28 +01:00
Mike Hommey
934aace9a3
Bug 603370 - Add an option to expandlibs-exec to allow to reorder the symbols when linking. r=khuey
2012-03-08 08:56:27 +01:00
Mike Hommey
5b2d25f61e
Backout changeset 283408b8d8a3 (bug 603370)
2012-03-08 08:39:17 +01:00
Mike Hommey
70f92bca22
Bug 695711 - Always add -ffunction-sections and -fdata-sections when building with GCC, and port bug 670659 and bug 675867 to js/src. r=khuey
...
--HG--
rename : build/unix/check_debug_ranges.py => build/autoconf/check_debug_ranges.py
rename : build/unix/check_debug_ranges.py => js/src/build/autoconf/check_debug_ranges.py
2012-02-27 16:35:44 +01:00
Bill McCloskey
a660f48b31
Bug 732719 - Mark stack slot as undefined (r=bhackett)
2012-03-07 18:05:29 -08:00
Christian Holler
c75048ad98
Bug 727445 - Add --enable-address-sanitizer for ASan specific workarounds. Add --enable-llvm-hacks to pass CFLAGS to NSS and omit -Wl,-z,defs for shared libs. r=khuey,kaie
2012-03-07 15:11:15 -08:00
Marco Bonardo
780de92c27
Backout d68420c97e0e (bug 691898) as suspected of the jit tests failures
2012-03-07 14:06:03 +01:00
Rafael Ávila de Espíndola
68a5f7fe40
Bug 733504 - More workarounds llvm.org/pr12127. r=dvander.
2012-03-07 08:32:15 -03:00
Landry Breuil
c78af1f2ba
Bug 691898 - Use YARR interpreter instead of PCRE on platforms where YARR JIT is not supported. r=dmandelin
2012-03-07 12:06:19 +01:00
David Mandelin
0e591d4ef6
Bug 733146: Add needed import to results.py, r=dmandelin
2012-03-06 18:54:42 -08:00
David Mandelin
a2fdf1a4b6
Bug 704259: part 2, don't set cx->generatingError in JS_ReportPendingException, r=luke
2012-03-06 18:49:05 -08:00
David Mandelin
f48bd8ea3c
Bug 704259: part 1, refactor use of cx->generatingError without changing behavior, r=luke
2012-03-06 18:49:00 -08:00
Luke Wagner
78bda59554
Bug 733310 - factor out inc/dec interpreter logic (r=bhackett)
...
--HG--
extra : rebase_source : 10d8277f4446f97e9a158f740d1a398341ac2382
2012-03-06 00:52:42 -08:00
Luke Wagner
6bb4df0a55
Bug 732744 - rm AutoPreserveEnumerators (r=dvander)
...
--HG--
extra : rebase_source : f28eebcf3a3e14f4db0299b07b28f8e7a783b84a
2012-03-06 00:43:45 -08:00
David Mandelin
68c407c176
Bug 733260 followup: use uint32_t for array and string lengths, r=luke
...
--HG--
extra : rebase_source : 1729b4b927fde0678872b9de62a7466381aa07c3
2012-03-06 15:52:55 -08:00
Bobby Holley
2dc291ee58
Bug 731845 - XPCWrappedNative::ReparentWrapperIfFound should handle preserved wrappers. r=mrbkap
2012-03-05 16:58:59 -08:00
Gregory Szorc
a272dc9b1e
Bug 729098 - Part 1/2: Create xUnit XML results file when executing xpcshell tests; r=khuey
2012-03-06 15:03:34 -08:00
Bill McCloskey
9eb41c6433
Bug 731094 - Expose a testing function that permits only deterministic GCs (r=igor)
2012-03-06 11:39:31 -08:00
Bill McCloskey
84718f7e90
Bug 729369 - Expose the same set of SpiderMonkey testing APIs to debug shell and debug browser chrome (r=Waldo)
2012-03-06 11:38:44 -08:00
Terrence Cole
b5a88d9637
Bug 733372 - Fix an infinite recursion in GC marking; r=billm
...
Since the private data is sometimes packed in strange ways into the underlying
structure, we cannot just pass a reference to it to the marker. Instead, we
store the gotten value on the C stack, do marking and potentially update its
value there, then pass the updated privates location to the object using
setPrivate. If the setPrivate function triggers write barriers that end up
marking, this can recurse. For now we should simply not do this.
--HG--
extra : rebase_source : ce2607907cc66f8beaeab433e21ba302cbf1b34e
2012-03-06 11:30:25 -08:00
Matt Brubeck
18cd6fbeaa
Back out 2fbc7d9ac670 (bug 731845) on suspicion of causing test_native_mouse_mac.xul timeouts
2012-03-06 11:05:37 -08:00
Mike Hommey
4bfcfc14d4
Bug 731151 - Avoid creating (and leaving around) an a.out during configure. r=khuey
2012-02-28 10:48:16 +01:00
Nicholas Nethercote
e93c8baf5c
Bug 729403 (follow-up) - Use the right KIND for runtime/gc-marker, thus avoiding warnings about explicit mismatches. r=me.
...
--HG--
extra : rebase_source : 4625531f438d5e1e6a2e600134dee959a45e8204
2012-03-05 21:04:38 -08:00
Mark Hammond
6f18fbf7c7
Bug 728986: dump() writes to stdout instead of stderr. r=bent
2012-03-06 15:44:37 +11:00
David Mandelin
5e02d0630c
Bug 733260: remove typedef jsuint, r=luke
...
--HG--
extra : rebase_source : e8f576e1b5b189b47807c613c0cff79f5c8038e7
2012-03-05 18:43:45 -08:00
Andrew McCreight
7f86c54ec3
Bug 723971 - unmark gray for shapes. r=billm
2012-03-05 18:11:29 -08:00
Bobby Holley
ac1fbc4a6a
Bug 731845 - XPCWrappedNative::ReparentWrapperIfFound should handle preserved wrappers. r=mrbkap
2012-03-05 16:58:59 -08:00
Bobby Holley
ba4156b5cf
Bug 720580 - Assert that we have the global jsclass flag if and only if we're a global. r=mrbkap
2012-03-05 15:22:53 -08:00
Bobby Holley
24197270eb
Bug 720580 - Assert against creating globals in xpc_NewSystemInheritingJSObject. r=mrbkap
...
With this patch, the only call to JS_NewGlobalObject in XPConnect happens in xpc_CreateGlobalObject. \o/
2012-03-05 15:22:45 -08:00
Bobby Holley
87d7f5f353
Bug 720580 - Do the last bit of wrapped global initialization once the dust has settled. r=mrbkap
2012-03-05 15:22:45 -08:00
Bobby Holley
eb0a73527c
Bug 720580 - Kill temporary globals. r=mrbkap
...
This patch breaks the "every commit is a 100% correct tree" invariant a little bit, because constructors and prototypes for DOM globals are broken (PostCreatePrototype never gets called). This is fixed in the next patch. Doing it this way makes for a cleaner series of commits, and the browser still builds and runs fine.
2012-03-05 15:22:45 -08:00
Bobby Holley
f43429b675
Bug 720580 - Introduce XPCWrappedNative::WrapNewGlobal. r=mrbkap
2012-03-05 15:22:45 -08:00
Bobby Holley
3523199f9a
Bug 720580 - Call TraceDOMPrototypes via TraceXPCGlobal, and avoid the verification process for wrapped natives. r=mrbkap
2012-03-05 15:22:45 -08:00
Bobby Holley
4b0b1b7f62
Bug 720580 - Make the call to PostCreatePrototype optional. r=mrbkap
2012-03-05 15:22:44 -08:00
Bobby Holley
d5786b3e4f
Bug 720580 - Factor out the call to PostCreatePrototype into a helper method. r=mrbkap
2012-03-05 15:22:44 -08:00
Bobby Holley
221605656b
Bug 720580 - Accept an explicit native global during XPCWrappedNativeScope creation. r=mrbkap
2012-03-05 15:22:44 -08:00
Bobby Holley
fa19fcd55d
Bug 720580 - Manually resolve |Object| on the global in XPCWrappedNativeScope::SetGlobal() to avoid calling into the XPConnect resolve hook too early. r=mrbkap
2012-03-05 15:22:44 -08:00
Bobby Holley
9146075c05
Bug 720580 - Make JSID class initialization happen on demand. r=mrbkap
2012-03-05 15:22:44 -08:00
Bobby Holley
1d80caf8a2
Bug 720580 - Modify the semantics of XPCWrappedNative::FinishCreate() so that it doesn't muck around with the refcounts of its inparam. r=mrbkap
...
The current semantics involve the caller transfering ownership of the input wrapper to FinishCreate(), which is complicated and error-prone. Now that we're using nsRefPtr at the callsites, we can get rid of it.
2012-03-05 15:22:44 -08:00
Bobby Holley
dd0c70edd5
Bug 720580 - Use nsRefPtr instead of manual AddRef/Release in XPCWrappedNative::{GetNewOrUsed,Morph}. r=mrbkap
2012-03-05 15:22:44 -08:00
Bobby Holley
5115bb9cb6
Bug 720580 - Move the AutoMarkingWrappedNativePtr in XPCWrappedNative::{GetNewOrUsed,Morph} closer to where we need it. r=mrbkap
2012-03-05 15:22:44 -08:00
Bobby Holley
fe4872737f
Bug 720580 - Stop passing isGlobal everywhere and use the nsIXPCScriptable flags instead. r=mrbkap
2012-03-05 15:22:44 -08:00
Bobby Holley
ccb745bc93
Bug 720580 - Stop passing aExtraPtr to InitClassesWithNewWrapedGlobal. r=mrbkap
...
We only ever pass null here anyway, and this whole infrastructure is going away real soon now.
2012-03-05 15:22:44 -08:00