Jason Orendorff
fcfd80cfc5
Merge from TM. Huge merge. Stack changes from bug 656462.
2011-06-15 16:14:09 -05:00
Jim Blandy
88decefd28
Merge from TM.
2011-06-07 12:12:28 -07:00
Jim Blandy
8bd7752c01
Backed out changeset d02083014f57; build problems in nsXPConnect.cpp
2011-06-06 09:01:47 -07:00
Jason Orendorff
6a958619a0
Automatically turn debug mode on/off when adding/removing debuggees.
...
This allows most of the tests to run without the -d command-line flag.
Now a compartment is in debug mode if
* JSD1 wants debug mode on, thanks to a JS_SetDebugMode* call; OR
* JSD2 wants debug mode on, because a live Debug object has a debuggee
global in that compartment.
Since this patch only adds the second half of the rule, JSD1 should be
unaffected.
The new rule has three issues:
1. When removeDebuggee is called, it can cause debug mode to be turned
off for a compartment. If any scripts from that compartment are on
the stack, and the methodjit is enabled, returning to those stack
frames will crash.
2. When a Debug object is GC'd, it can cause debug mode to be turned off
for one or more compartments. This causes the same problem with
returning to deleted methodjit code, but the fix is different: such
Debug objects simply should not be GC'd.
3. Setting .enabled to false still does not turn off debug mode
anywhere, so it does not reduce overhead as much as it should.
A possible fix for issue #1 would be to make such removeDebuggee calls
throw. The fix to issues #2 and #3 is to tweak the rule--and to tweak
the rule for Debug object GC-reachability.
--HG--
rename : js/src/jit-test/tests/debug/Debug-ctor.js => js/src/jit-test/tests/debug/Debug-ctor-01.js
2011-06-02 21:58:46 -05:00
Jason Orendorff
0305e45450
Merge from tracemonkey to jsdbg2.
2011-05-25 17:52:35 -05:00
Jason Orendorff
5323e5a91c
Debuggees are globals, not compartments.
2011-05-23 11:11:09 -05:00
Igor Bukanov
3e2ef6c4ef
bug 656261 - better GC arena layout. r=wmccloskey
2011-05-19 21:01:08 +02:00
Jason Orendorff
001c42745d
Merge from tracemonkey to jsdbg2. This merge reveals a bug in DebugFrame_getOlder, to be fixed separately.
2011-05-16 17:50:52 -05:00
Jason Orendorff
03415943ee
Merge from tracemonkey to jsdbg2.
2011-05-04 12:13:58 -05:00
Jason Orendorff
a0e4b2bf22
Merge from tracemonkey to jsdbg2.
2011-04-29 10:12:46 -05:00
Paul Biggar
15828cd649
Backed out changeset 334ada87e329 (bug 628332) - those a11y errors arrived at the same time as this landing, so backing this out to see if that fixes it.
2011-04-29 04:00:57 -07:00
Christian Holler
faf48eb1e7
Bug 628332 - Avoid double-frees when compartment allocation fails (r=billm).
2011-04-27 16:09:00 -07:00
Jason Orendorff
782cb92948
Merge from tracemonkey to jsdbg2.
2011-04-26 14:45:06 -05:00
Christian Holler
b0902374f8
Bug 628332 - Avoid double-frees when compartment allocation fails (r=billm).
2011-05-03 04:26:40 -07:00
Jason Orendorff
d48b27e096
Rearrange some stuff. This way more js::Debug methods can be private, without making anything new public; all the event dispatch code is in one place; and we avoid having JSCompartment methods in jsdbg.cpp.
2011-04-21 14:44:53 -05:00
Jason Orendorff
5e2c73b316
Add rudimentary support for Debug.prototype.hooks.debuggerHandler. Note: A new constant JSPROP_NATIVE_ACCESSOR is added in jsapi.h, so that js_InitClass can create proper accessor properties.
2011-04-18 17:42:07 -05:00
David Anderson
cfa95c8cf3
Backed out changeset d851d44ad77a
2011-04-22 11:40:55 -07:00
David Anderson
43e7e71dd5
Refactor Call ICs (bug 638680, r=luke).
2011-04-21 11:14:49 -07:00
Bill McCloskey
3c0cd83aa3
Bug 616666 - Use explicit stack for GC marking (r=gal)
2011-04-15 16:56:08 -07:00
Luke Wagner
67af97e094
Bug 656462, part 3 - Syntactic touchups (r=waldo)
...
--HG--
extra : rebase_source : 7a81c352a96b9e23fc8f7bee5cb1d095c5cdb998
2011-05-24 16:08:40 -07:00
Gregor Wagner
99a0150f57
Bug 627200 - Background Finalization for Strings and Objects r=gal
2011-04-13 13:43:33 -07:00
Luke Wagner
05d2002b66
Bug 644074 - Simplify and consolidate VM stack code into js/src/vm/Stack*
2011-04-13 09:27:37 -07:00
Chris Leary
e9c15c147e
Merge mozilla-central to tracemonkey.
2011-05-09 14:27:44 -07:00
Igor Bukanov
0370e3ab43
bug 652416 - race fixes and other cleanups for background finalization. r=anygregor
...
--HG--
extra : rebase_source : b1685fff8fa5dab43b9b595daa6118249d3ef891
2011-04-25 22:05:30 +02:00
David Mandelin
4e818e3c46
Bug 625600: Update Yarr import to WebKit rev 86639, r=cdleary,dvander
2011-05-12 18:39:47 -07:00
David Mandelin
098ec8fea9
Backed out changeset 10b4c261e3d0 -- Tracemonkey tinderbox is stricter than try
2011-05-25 08:53:26 -07:00
David Mandelin
64fee2ad60
Bug 625600: Update Yarr import to WebKit rev 86639, r=cdleary,dvander
...
--HG--
extra : rebase_source : 80887364e39608eadb947d77ff80725642e41f31
2011-05-12 18:39:47 -07:00
Igor Bukanov
e41886ec1e
bug 658510 - eliminating JSCOMPARTMENT_NEW and associated compartment initialization race. r=mrbkap
2011-05-22 12:09:28 +02:00
David Mandelin
46408c2ec4
Backed out changeset 119f17b3f03a -- still failing TB
2011-05-23 17:54:42 -07:00
David Mandelin
83c9f9dee2
Bug 625600: Update Yarr import to WebKit rev 86639, r=cdleary,dvander
2011-05-12 18:39:47 -07:00
David Mandelin
d52fa2f1b8
Backed out changeset 195f8cf8758f due to ARM bustage
2011-05-23 14:49:33 -07:00
David Mandelin
e60b7b472a
Bug 625600: Update Yarr import to WebKit rev 86639, r=cdleary,dvander
2011-05-12 18:39:47 -07:00
David Mandelin
37887345d9
Backed out changeset de6dfe16fd91 due to Linux/Mac build bustage
2011-05-23 14:22:03 -07:00
David Mandelin
f7eb07c405
Bug 625600: Update Yarr import to WebKit rev 83339, r=cdleary,dvander
2011-05-12 18:39:47 -07:00
Igor Bukanov
397237b2b1
Backed out changeset 869479a8d3c8 - patch for bug 656261 caused jsreftest failure on Windows in the browser.
2011-05-19 00:59:19 +02:00
Igor Bukanov
8f8b62c845
bug 656261 - better GC arena layout. r=wmccloskey
...
--HG--
extra : rebase_source : d6b63d38ef586c7e1d7141c8e0859fe026803a5d
2011-04-22 00:47:46 +02:00
Nicholas Nethercote
6ef173ddbb
Bug 633653 - revamp about:memory. r=vlad,sdwilsh,dvander,gavin,ehsan,edwsmith; sr=benjamin.
2011-05-03 17:12:58 -07:00
Jeff Walden
484a36371d
Bug 640503 - Convert new String().length to use a regular data property and not a shared-permanent property-op getter/setter. r=jorendorff
...
--HG--
extra : rebase_source : 06bb9b53c0498d20b3afc6e558096c2398559602
2011-03-13 20:38:34 -07:00
Paul Biggar
72c7701093
Bug 634155: Account for NewCompartment's memory, and change allocation APIs (r=nnethercote)
...
This changes the allocation API, in the following way:
js_malloc -> {cx->,rt->,OffTheBooks::}malloc
js_calloc -> {cx->,rt->,OffTheBooks::}calloc
js_realloc -> {cx->,rt->,OffTheBooks::}realloc
js_free -> {cx->,rt->,Foreground::,UnwantedForeground::}free
js_new -> {cx->,rt->,OffTheBooks::}new_
js_new_array -> {cx->,rt->,OffTheBooks::}new_array
js_delete -> {cx->,rt->,Foreground::,UnwantedForeground::}delete_
This is to move as many allocations as possible through a JSContext (so that they may be aken into account by gcMallocBytes) and to move as many deallocations to the background as possible (except on error paths).
2011-03-31 01:13:49 -07:00
Luke Wagner
be794a0b5b
Bug 633690 - add HashMap::lookupWithDefault and putNew helper functions (r=billm)
...
--HG--
extra : rebase_source : 109b7974dac40749562c3b3ad4615029f1699b97
2011-03-23 17:40:11 -07:00
Jeff Walden
4dce1d9ffa
Bug 640072 - Convert properties of RegExp objects into true data properties, eliminating a use of shared-permanent properties. r=jorendorff
2011-03-05 15:29:30 -08:00
Bill McCloskey
0f733168cb
Bug 569422 - Allocate js::Shape from the GC heap (r=brendan)
2011-03-23 11:57:44 -07:00
Luke Wagner
7c96945e3c
Bug 613457 - clean up string interfaces (r=njn)
...
--HG--
extra : rebase_source : 3e77b67fa9fe2cc31312ad99951cf92258a98e64
2011-03-14 13:59:53 -07:00
Luke Wagner
fee4a41733
Bug 616562 - speed up JSString::isStatic (r=njn)
...
--HG--
extra : rebase_source : 9f0b553b8ab54bfbbd5290ba936581bda8bb40ec
2011-03-14 13:55:55 -07:00
Jason Orendorff
ec6e3d3332
Backed out changeset 39de74c74b20, which is causing the browser to leak windows.
2011-03-14 17:37:04 -05:00
Jason Orendorff
efd9982808
Bug 561359 - Change JSOP_LAMBDA to apply the method optimization deterministically. In particular, it no longer depends on whether enclosing Blocks have been reified. This prevents incorrect behavior and assertions when a JSOP_LAMBDA, JSOP_INITMETHOD pair apply the method optimization once, populating the property cache, but later the same JSOP_LAMBDA instruction does not (under the old code) apply the optimization. With this patch, if JSOP_LAMBDA pushes the uncloned function once, it always will. r=brendan.
2011-03-14 15:54:34 -05:00
Andreas Gal
0dc25a462f
Follow-up fix for bug 639729.
2011-03-13 19:20:06 -07:00
Nicholas Nethercote
7115ff9cf1
Bug 639743 - JM: clean up Executable{Pool,Allocator} some more, 1/6. r=dvander.
2011-03-09 19:10:41 -08:00
Andreas Gal
e787b97701
Sweep compartments when no objects live in them (bug 639270, r=gregor).
2011-03-08 20:58:38 -08:00
Phil Ringnalda
d21d12b55b
Back out 80d8431f209e (bug 639270) for failing to actually compile
2011-03-08 19:59:30 -08:00