Commit Graph

215 Commits

Author SHA1 Message Date
Igor Bukanov
cc337ac79c bug 674251 - making JSScript a GC-thing. r=jorendorff,bhackett1024 2011-08-09 10:51:59 +02:00
Sander van Veen
3347c443e5 Bug 673158 - Separate regexp JIT code and normal mjit code in about:memory. code=sandervv,Bas.Weelinck, r=nnethercote. 2011-08-30 17:21:36 -07:00
Jason Orendorff
7ce1bc6c4e Bug 561359 - Predication of method optimization is too dynamic, causing "Assertion failure: &shape.methodObject() == &prev.toObject()". r=dvander.
--HG--
extra : rebase_source : 0a101adb7b237c56bde65ff7af3fdfcee0ad13df
2011-08-30 12:55:46 -05:00
Brian Hackett
369b0a54d3 Fix bustage for mjit-disabled, tjit-disabled, and Linux64 warnings-as-errors. 2011-08-30 08:03:34 -07:00
Brian Hackett
8e19ba6201 [INFER] Encapsulate GC arena/cell iteration, bug 679887. 2011-08-26 12:39:31 -07:00
Brian Hackett
045638a1ea Merge MC -> JM 2011-08-26 11:23:35 -07:00
Brian Hackett
7f4dcc90fb [INFER] Use mark stack for type objects, bug 679887. 2011-08-26 09:50:48 -07:00
Brian Hackett
6e0458f6d1 [INFER] Watch for recompilation triggered by while compiling a call in an inlined frame, bug 680951. 2011-08-26 08:55:00 -07:00
Jason Orendorff
04e98f6fd3 Bug 677386 - Fix jsdbg2 breakpoint GC rules. r=billm. 2011-08-24 18:42:19 -05:00
Jason Orendorff
51d9a1ec05 Fix a breakpoint GC bug found by billm. See bug 677386 comment 8, first paragraph. r=billm on IRC. 2011-08-24 18:42:19 -05:00
Jason Orendorff
b33e0d70c3 Bug 680428 - onEnterFrame does not work with tracejit. r=dvander.
--HG--
rename : js/src/jit-test/tests/debug/onEnterFrame-05.js => js/src/jit-test/tests/debug/onEnterFrame-04.js
2011-08-23 14:42:17 -05:00
Brian Hackett
e3657362df [INFER] Mark singleton JSObjects as well as TypeObjects when a GC is triggered during analysis, bug 678240. 2011-08-17 13:16:11 -07:00
Brian Hackett
f3b5be7a42 [INFER] Allocate typeset data and properties from arenas, occasionally purge observed types in compartments, bug 679329. 2011-08-17 06:48:14 -07:00
Brian Hackett
06268c9f02 Merge MC -> JM 2011-08-14 19:51:16 -07:00
Brian Hackett
4c611afd71 Merge MC -> JM 2011-08-12 07:20:08 -07:00
Jason Orendorff
fbb0edbd8d Merge jsdbg2 to mozilla-inbound. See bug 672829. 2011-08-13 13:29:18 -05:00
Jason Orendorff
a84b890520 Address review comments from billm in bug 672829 comment 76. 2011-08-11 16:07:35 -05:00
Jason Orendorff
9bca815475 Address review comments from billm (bug 672829 comment 65). 2011-08-11 00:58:28 -05:00
Jason Orendorff
bba8ad1126 Address review comments from brendan (bug 672829 comment 42). 2011-08-03 19:43:39 -05:00
Brian Hackett
6c3284f1e8 Merge MC -> JM.
--HG--
rename : dom/src/threads/Makefile.in => dom/workers/Makefile.in
rename : dom/src/threads/test/Makefile.in => dom/workers/test/Makefile.in
rename : dom/src/threads/test/WorkerTest.jsm => dom/workers/test/WorkerTest.jsm
rename : dom/src/threads/test/atob_worker.js => dom/workers/test/atob_worker.js
rename : dom/src/threads/test/chromeWorker_subworker.js => dom/workers/test/chromeWorker_subworker.js
rename : dom/src/threads/test/chromeWorker_worker.js => dom/workers/test/chromeWorker_worker.js
rename : dom/src/threads/test/closeOnGC_worker.js => dom/workers/test/closeOnGC_worker.js
rename : dom/src/threads/test/importScripts_worker.js => dom/workers/test/importScripts_worker.js
rename : dom/src/threads/test/importScripts_worker_imported1.js => dom/workers/test/importScripts_worker_imported1.js
rename : dom/src/threads/test/importScripts_worker_imported2.js => dom/workers/test/importScripts_worker_imported2.js
rename : dom/src/threads/test/json_worker.js => dom/workers/test/json_worker.js
rename : dom/src/threads/test/recursion_worker.js => dom/workers/test/recursion_worker.js
rename : dom/src/threads/test/relativeLoad_sub_worker.js => dom/workers/test/relativeLoad_sub_worker.js
rename : dom/src/threads/test/relativeLoad_worker.js => dom/workers/test/relativeLoad_worker.js
rename : dom/src/threads/test/simpleThread_worker.js => dom/workers/test/simpleThread_worker.js
rename : dom/src/threads/test/terminate_worker.js => dom/workers/test/terminate_worker.js
rename : dom/src/threads/test/test_404.html => dom/workers/test/test_404.html
rename : dom/src/threads/test/test_chromeWorker.html => dom/workers/test/test_chromeWorker.html
rename : dom/src/threads/test/test_chromeWorker.xul => dom/workers/test/test_chromeWorker.xul
rename : dom/src/threads/test/test_chromeWorkerJSM.xul => dom/workers/test/test_chromeWorkerJSM.xul
rename : dom/src/threads/test/test_close.html => dom/workers/test/test_close.html
rename : dom/src/threads/test/test_closeOnGC.html => dom/workers/test/test_closeOnGC.html
rename : dom/src/threads/test/test_errorPropagation.html => dom/workers/test/test_errorPropagation.html
rename : dom/src/threads/test/test_fibonacci.html => dom/workers/test/test_fibonacci.html
rename : dom/src/threads/test/test_importScripts.html => dom/workers/test/test_importScripts.html
rename : dom/src/threads/test/test_json.html => dom/workers/test/test_json.html
rename : dom/src/threads/test/test_longThread.html => dom/workers/test/test_longThread.html
rename : dom/src/threads/test/test_navigator.html => dom/workers/test/test_navigator.html
rename : dom/src/threads/test/test_recursion.html => dom/workers/test/test_recursion.html
rename : dom/src/threads/test/test_relativeLoad.html => dom/workers/test/test_relativeLoad.html
rename : dom/src/threads/test/test_simpleThread.html => dom/workers/test/test_simpleThread.html
rename : dom/src/threads/test/test_suspend.html => dom/workers/test/test_suspend.html
rename : dom/src/threads/test/test_terminate.html => dom/workers/test/test_terminate.html
rename : dom/src/threads/test/test_threadErrors.html => dom/workers/test/test_threadErrors.html
rename : dom/src/threads/test/test_threadTimeouts.html => dom/workers/test/test_threadTimeouts.html
rename : dom/src/threads/test/test_throwingOnerror.html => dom/workers/test/test_throwingOnerror.html
rename : dom/src/threads/test/test_xhr.html => dom/workers/test/test_xhr.html
rename : dom/src/threads/test/test_xhrAbort.html => dom/workers/test/test_xhrAbort.html
rename : dom/src/threads/test/threadTimeouts_worker.js => dom/workers/test/threadTimeouts_worker.js
rename : dom/src/threads/test/xhr_worker.js => dom/workers/test/xhr_worker.js
2011-07-28 18:10:31 -07:00
Jason Orendorff
c4f527861a Merge from mozilla-central to jsdbg2. 2011-07-28 13:45:51 -05:00
Brian Hackett
beb3e0531e [INFER] Reduce inference-related script overhead, bug 674609. 2011-07-28 09:16:53 -07:00
Jason Orendorff
75a71f51e8 Merge from mozilla-central to jsdbg2 branch. 2011-07-27 18:23:16 -05:00
Jason Orendorff
722572a323 Rename jsdbg.{h,cpp} to vm/Debugger.{h,cpp}. This addresses a review comment from brendan in bug 627829 comment 42.
--HG--
rename : js/src/jsdbg.cpp => js/src/vm/Debugger.cpp
rename : js/src/jsdbg.h => js/src/vm/Debugger.h
2011-07-27 18:03:34 -05:00
Igor Bukanov
907a4b7654 bug 673795 - part2, using lists of avaiulable chunks for faster chunk selection. r=wmccloskey
--HG--
extra : rebase_source : ae4f5a82bc4042e341fdb5c08e3f0fe4b4ae8935
2011-07-26 09:55:23 +02:00
Jason Orendorff
0a4b0df2c1 Address review comments from brendan (bug 627829 comment 35). 2011-07-22 10:54:36 -05:00
Brian Hackett
dda30fa4b2 Merge MC -> JM 2011-07-21 18:53:37 -07:00
Brian Hackett
6cedc75bac [INFER] Make TypeObject a GC thing, remove lazily created type objects on GC, bug 669969. 2011-07-21 07:28:01 -07:00
Jason Orendorff
f8465f2924 Bug 637985 - Reimplement watchpoints using a JSObject bit. r=jimb. 2011-07-27 17:44:43 -05:00
Blake Kaplan
4dce96c6be Bug 669228 - Don't use the dummy global as a real global. r=jorendorff 2011-07-27 12:33:33 -07:00
Bill McCloskey
e41d5f10b1 Bug 671113 - Poison JSScripts when freed to get more crash data (r=dmandelin) 2011-07-19 14:21:58 -07:00
Jason Orendorff
052fe6b23a In JSCompartment::sweepBreakpoints, enumerate the breakpoints safely instead of reading freed memory. 2011-07-18 16:57:39 -05:00
Jason Orendorff
671bbf0bb1 Merge mozilla-central to jsdbg2. 2011-07-18 10:58:56 -05:00
Brian Hackett
89a7a7eac5 Merge MC -> JM 2011-07-15 14:40:15 -07:00
Brian Hackett
c091101935 [INFER] Lazily create type objects for singleton JS objects, bug 670185. 2011-07-15 10:14:07 -07:00
David Mandelin
0f81026221 Bug 605290: check for null globalObject before innerizing, r=luke 2011-07-13 16:47:10 -07:00
Bill McCloskey
fd629a392b Bug 661903 - Move script filename table to compartment (r=igor) 2011-07-14 16:02:12 -07:00
Brian Hackett
00d04a894d Restore per-compartment empty call shape, bug 670152. r=jorendorff 2011-07-08 11:16:25 -07:00
Brian Hackett
e0c7a11c50 [INFER] Fix build breaks with --disable-methodjit. 2011-07-05 16:52:39 -07:00
Jason Orendorff
26c054bdc4 Rename Debug to Debugger.
--HG--
rename : js/src/jit-test/tests/debug/Debug-clearAllBreakpoints-01.js => js/src/jit-test/tests/debug/Debugger-clearAllBreakpoints-01.js
rename : js/src/jit-test/tests/debug/Debug-ctor-01.js => js/src/jit-test/tests/debug/Debugger-ctor-01.js
rename : js/src/jit-test/tests/debug/Debug-ctor-02.js => js/src/jit-test/tests/debug/Debugger-ctor-02.js
rename : js/src/jit-test/tests/debug/Debug-ctor-03.js => js/src/jit-test/tests/debug/Debugger-ctor-03.js
rename : js/src/jit-test/tests/debug/Debug-debuggees-01.js => js/src/jit-test/tests/debug/Debugger-debuggees-01.js
rename : js/src/jit-test/tests/debug/Debug-debuggees-02.js => js/src/jit-test/tests/debug/Debugger-debuggees-02.js
rename : js/src/jit-test/tests/debug/Debug-debuggees-03.js => js/src/jit-test/tests/debug/Debugger-debuggees-03.js
rename : js/src/jit-test/tests/debug/Debug-debuggees-04.js => js/src/jit-test/tests/debug/Debugger-debuggees-04.js
rename : js/src/jit-test/tests/debug/Debug-debuggees-05.js => js/src/jit-test/tests/debug/Debugger-debuggees-05.js
rename : js/src/jit-test/tests/debug/Debug-debuggees-06.js => js/src/jit-test/tests/debug/Debugger-debuggees-06.js
rename : js/src/jit-test/tests/debug/Debug-debuggees-07.js => js/src/jit-test/tests/debug/Debugger-debuggees-07.js
rename : js/src/jit-test/tests/debug/Debug-debuggees-08.js => js/src/jit-test/tests/debug/Debugger-debuggees-08.js
rename : js/src/jit-test/tests/debug/Debug-debuggees-09.js => js/src/jit-test/tests/debug/Debugger-debuggees-09.js
rename : js/src/jit-test/tests/debug/Debug-debuggees-10.js => js/src/jit-test/tests/debug/Debugger-debuggees-10.js
rename : js/src/jit-test/tests/debug/Debug-debuggees-11.js => js/src/jit-test/tests/debug/Debugger-debuggees-11.js
rename : js/src/jit-test/tests/debug/Debug-debuggees-12.js => js/src/jit-test/tests/debug/Debugger-debuggees-12.js
rename : js/src/jit-test/tests/debug/Debug-debuggees-13.js => js/src/jit-test/tests/debug/Debugger-debuggees-13.js
rename : js/src/jit-test/tests/debug/Debug-debuggees-14.js => js/src/jit-test/tests/debug/Debugger-debuggees-14.js
rename : js/src/jit-test/tests/debug/Debug-debuggees-15.js => js/src/jit-test/tests/debug/Debugger-debuggees-15.js
rename : js/src/jit-test/tests/debug/Debug-debuggees-16.js => js/src/jit-test/tests/debug/Debugger-debuggees-16.js
rename : js/src/jit-test/tests/debug/Debug-enabled-01.js => js/src/jit-test/tests/debug/Debugger-enabled-01.js
rename : js/src/jit-test/tests/debug/Debug-getYoungestFrame-01.js => js/src/jit-test/tests/debug/Debugger-getYoungestFrame-01.js
rename : js/src/jit-test/tests/debug/Debug-getYoungestFrame-02.js => js/src/jit-test/tests/debug/Debugger-getYoungestFrame-02.js
rename : js/src/jit-test/tests/debug/Debug-multi-01.js => js/src/jit-test/tests/debug/Debugger-multi-01.js
rename : js/src/jit-test/tests/debug/Debug-multi-02.js => js/src/jit-test/tests/debug/Debugger-multi-02.js
rename : js/src/jit-test/tests/debug/Debug-multi-03.js => js/src/jit-test/tests/debug/Debugger-multi-03.js
2011-07-05 07:48:26 -05:00
Jason Orendorff
1f245d40df Merge from tracemonkey to jsdbg2. 2011-07-01 19:02:40 -05:00
Brian Hackett
dee99963bb Merge TM -> JM 2011-07-01 16:24:32 -07:00
Jason Orendorff
be6339e5c2 Add breakpoints.
This adds a new per-compartment implementation of breakpoints and
reimplements the jsdbgapi.h "trap" entry points on top of it. Most
jsdbgapi.h-using code will still work, but there is no longer a single
runtime-wide trapList protected by a lock. Embeddings must follow the
compartment rules for thread safety.

JS_ClearAllTraps was removed, replaced by the per-compartment API
JS_ClearAllTrapsForCompartment.

The new implementation asserts that the PC passed to JS_SetTrap is
actually an offset of an instruction, not just a random number. This
caused quite a few tests to fail; fixes are included.

Added Debug.Script.prototype.setBreakpoint, getBreakpoints,
clearBreakpoint, and clearAllBreakpoints; and
Debug.prototype.clearAllBreakpoints.

In addition to tests targeting the new functionality, this changeset
includes some tests for Debug.Script.prototype.getLineOffsets, which is
hard to test without breakpoints.
2011-06-28 16:06:34 -05:00
Jason Orendorff
cebed13303 Support disabling debug mode in a compartment with scripts on the stack. Dump the debug-mode JIT code during a later GC. 2011-06-23 12:25:48 -05:00
Jason Orendorff
7b711756ef Fix Debug-ctor-03.js (regression: the exception is being thrown in the wrong compartment since rev e05d3da5866a) and make removeDebuggee throw if it would disable debug mode in a compartment with scripts on the stack. 2011-06-20 15:33:53 -05:00
Jason Orendorff
9c28130121 Back out 305a3a0e26fd (bug 680428). 2011-08-23 15:36:48 -05:00
Jason Orendorff
6514983537 Bug 680428 - onEnterFrame does not work with tracejit. r=dvander.
--HG--
rename : js/src/jit-test/tests/debug/onEnterFrame-05.js => js/src/jit-test/tests/debug/onEnterFrame-04.js
extra : rebase_source : f3c4ff14ae6a95e7c891ea5aac2cfee8c2e28c68
2011-08-23 14:42:17 -05:00
Kyle Huey
d3e7553ab9 Mass revert m-i to the last known good state 2011-07-13 18:22:33 -07:00
David Mandelin
1fdf7dccd7 Bug 605290: Check for null cx->globalObject, r=luke 2011-07-13 16:47:10 -07:00
Brian Hackett
1186d01428 Merge TM -> JM 2011-06-06 09:48:04 -07:00