Commit Graph

145 Commits

Author SHA1 Message Date
Matt Brubeck
424ea88da6 Back out 670c8a2695b3 (bug 771354), 134557d57e6e 4ad52e488977 (bug 774607), and...
036eb8c2a08a d4d36e3b948f 35334e820632 6bd07fd5147d d49e7c0d762c 407f19deb14c d84551808abb (bug 774633)
on a CLOSED TREE
2012-08-23 21:34:27 -07:00
Luke Wagner
48412c861d Bug 625199 - kill dummy frames (r=mrbkap)
--HG--
extra : rebase_source : df4e3bddabf20cdc5b9122370fa62b40e64177c7
2012-08-17 18:05:06 -07:00
Bobby Holley
2114d947a1 Bug 774607 - Remove JS_{Is,Make}SystemObject API. r=luke 2012-08-23 16:44:53 -07:00
Luke Wagner
b844e5f326 Bug 772285 - rm JSPD_ARGUMENT/JSPD_VARIABLE (r=sfink)
--HG--
extra : rebase_source : 7be9ea3e5e90be9abd65f7d5268741e453cc717b
2012-07-10 15:34:12 -07:00
Gervase Markham
87620f5676 Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Luke Wagner
d7522046db Bug 690135 - create scope objects eagerly or not at all (r=jimb)
--HG--
extra : rebase_source : 6b1e37699e0556685b1ed88fa15ab380428b6ffa
2011-12-20 17:42:45 -08:00
Till Schneidereit
53b81d3cba Change nsXPConnect::CheckForDebugMode to trigger one multi-compartment GC instead of individual GCs for all compartments, to fix GC pauses when switching tabs with Firebug. Bug 754201, r=jorendorff, r=sfink. 2012-05-14 18:46:51 -05:00
Jason Orendorff
b442f6158f Bug 749316 - Put Debugger object into chrome scratchpad. r=dcamp,bholley.
--HG--
extra : rebase_source : 12ab275ac9cdfa0e9890c507e30e0b56e4086816
2012-05-01 10:17:32 -05:00
Luke Wagner
312c73da34 Bug 690135 - remove some bits of jsdbgapi and shell (r=jorendorff)
--HG--
extra : rebase_source : 6741e97b5279c41ec1b9a08fbf5e693b17820106
2012-04-25 18:19:06 -07:00
Justin Lebar
4534006f67 Bug 741652 - On Linux, make JS_StartProfiling start the |perf| profiler. r=sfink 2012-04-24 13:12:32 -04:00
Nicolas Pierron
687329b7b8 Bug 744670 - Port StackIter modification of IonMonkey. r=luke 2012-04-13 13:45:01 -07:00
David Mandelin
905c0f1adb Bug 739808: Remove method cloning optimization and method barrier, r=luke
--HG--
extra : rebase_source : d383c3704c3efd08f9fbf1324433a94fc4a8dbb8
2012-03-23 17:59:56 -07:00
Igor Bukanov
5542df3342 bug 730221 - delegating serialization of script principals to the embedding. r=:luke,:bz
Currently to serialize principals stored in JSScript we have a rather complex
schema. First there is the transcode callback that the embedding must provide
to transcode principals using XDR API. Second we use rather complex glue code
to implement that callback in terms of writing/reading nsIObjectOutputStream/
nsIObjectInputStream. This glue code is duplicated in 3 places. All this can
be avoided if we simply delegate transcoding of principals to the caller. In
addition, at least in the case of the cached startup scripts we do not even
need to transcode the principals as the the cached scripts always have the
system principal so we can skip all the transcode complexity there.

The patch implemnts this idea. In particular, the code in JS engine
responsible for transcoding of principals is replaced by the single API
function JS_XDRSetPrincipals that the embedding can use to set principals for
decoded scripts and functions. Then the startup cache uses this to set the
principals for the decoded script to the system principals. The other two
places in nsJSContext::Serialize and  XBL_SerializeFunction that need to
serialize principals together with a function or script now uses common
utilities in nsXPConnect so the serialization complexity resides in the single
 place.
2012-02-13 14:10:04 +01:00
David Anderson
47563b2221 Remove JS_GetScriptedCaller (bug 732652, r=luke,mrbkap,bholley,smaug,bent). 2012-03-06 15:33:12 -08:00
David Mandelin
60e80d55b6 Bug 730511: remove obsolete typedefs intN, uintN, r=luke 2012-02-28 15:11:11 -08:00
Igor Bukanov
bb69258364 bug 730987 - remove per-context debug hooks. r=luke 2012-02-28 11:54:40 +01:00
Luke Wagner
f5e853cb76 Bug 692269 - Remove jsstr.h, vm/String.h, jsautokw.h, jsclone.h, jsopcode.tbl, jsopcode.h, jsstdint.h from INSTALLED_HEADERS (r=billm)
--HG--
extra : rebase_source : f9e20f1d52987251ad3d58c76531dcd5135076ad
2012-01-30 09:17:38 -08:00
Jeff Walden
e1e013efb8 Bug 723249 - Implement a dump() function on JSString, JSAtom, and JSObject, for easier typing than js_Dump*. Also implement JSString::equals. r=luke
--HG--
extra : rebase_source : 0bb078d0ded8aa52753261605bc72a5eef45e65e
2012-01-31 18:03:41 -08:00
Ms2ger
2ebe58f6e7 Bug 714728 - Remove jsword/jsuword in favour of intptr_t/uintptr_t; r=Waldo 2012-01-11 09:23:05 +01:00
Bobby Holley
9f17b789c2 Bug 715417 - Eliminate getPrincipalArray and globalPrivilegesEnabled from JSPrincipals. r=mrbkap 2012-01-06 17:29:02 -08:00
Jeff Walden
476c7d19c5 Bug 708735 - Use <stdint.h> types in JSAPI and throughout SpiderMonkey. Continue to provide the {u,}int{8,16,32,64} and JS{Uint,Int}{8,16,32,64} integer types through a single header, however, for a simpler backout strategy -- and also to ease the transition for embedders. r=timeless on switching the jsd API to use the <stdint.h> types, r=luke, r=dmandelin 2011-12-08 22:54:10 -05:00
Luke Wagner
a5fc0b3da5 Bug 624621 - Allow embeddings to attach an extra 'origin' principal to scripts (r=mrbkap)
--HG--
extra : rebase_source : 85ed15c9f230bc342e7810e62abace18a7177c4b
2011-06-27 17:42:53 -07:00
Brian Hackett
998e1208e3 Don't try to correlate scripts with functions in JSD interface, bug 707613. r=luke 2011-12-07 13:41:27 -08:00
Brian Hackett
4e750df483 Remove JSOP_TRAP, bug 707454. r=jorendorff 2011-12-07 13:15:48 -08:00
Brian Hackett
f0c35c0584 Merge MC -> JM 2011-12-03 10:34:26 -08:00
Brian Hackett
e970326d58 Add API for JSD to get the parent of a scope object, no bug. 2011-11-28 07:43:31 -08:00
Brian Hackett
c3b9744976 Merge MC -> JM 2011-11-26 15:03:20 -08:00
Steve Fink
5e5f0351b2 Bug 702740 - Add JS_SetFunctionCallback to JSAPI proper (still gated on --enable-trace-jscalls). r=luke
--HG--
extra : rebase_source : 1d77493b4a5a39bf1b2c615f13d77021324ea6d2
2011-12-01 11:25:37 -08:00
Brian Hackett
cc15146e95 Merge MC -> JM 2011-11-14 09:13:33 -08:00
Brian Hackett
a145bef354 Add type behavior info to script PC counts, bug 691788. r=sfink 2011-11-10 12:34:24 -08:00
Brian Hackett
d64dce75db Merge MC -> JM
--HG--
rename : js/src/jsparse.cpp => js/src/frontend/BytecodeCompiler.cpp
rename : js/src/jsparse.h => js/src/frontend/BytecodeCompiler.h
rename : js/src/jsemit.cpp => js/src/frontend/BytecodeGenerator.cpp
rename : js/src/jsemit.h => js/src/frontend/BytecodeGenerator.h
rename : js/src/jsparse.cpp => js/src/frontend/FoldConstants.cpp
rename : js/src/jsparse.cpp => js/src/frontend/ParseNode.cpp
rename : js/src/jsparse.h => js/src/frontend/ParseNode.h
rename : js/src/jsparse.cpp => js/src/frontend/Parser.cpp
rename : js/src/jsparse.h => js/src/frontend/Parser.h
rename : js/src/jsregexpinlines.h => js/src/vm/RegExpObject-inl.h
rename : js/src/jsregexp.cpp => js/src/vm/RegExpObject.cpp
rename : js/src/jsregexp.h => js/src/vm/RegExpObject.h
rename : js/src/xpconnect/src/xpcjsruntime.cpp => js/xpconnect/src/XPCJSRuntime.cpp
rename : js/src/xpconnect/src/xpcquickstubs.cpp => js/xpconnect/src/XPCQuickStubs.cpp
rename : js/src/xpconnect/src/nsXPConnect.cpp => js/xpconnect/src/nsXPConnect.cpp
2011-10-19 14:26:08 -07:00
Brian Hackett
99df9202c3 Remove JSObject::capacity and JSObject::initializedLength, split JSObject::slots into slots and elements, bug 693221. 2011-10-10 11:41:03 -07:00
Brian Hackett
e89780c40d Remove jsobj.h from installed headers, bug 690943. r=luke 2011-10-04 07:06:54 -07:00
Luke Wagner
ff185699a3 Bug 632064 - remove JS_GetScopeChain (r=mrbkap)
--HG--
extra : rebase_source : dcaab70f180d23ad3e9cd12c2d84d326b012fbb2
2011-09-28 17:57:27 -07:00
David Anderson
df566990d3 Remove LeaveTrace and related structures (bug 698201 part 5, r=luke). 2011-11-22 17:41:43 -05:00
Luke Wagner
a1f9b8a260 Bug 690645 - Make AutoScriptUntrapper not massively break invariants; tidy up decompiler a bit (r=waldo)
--HG--
extra : rebase_source : ebf821635c9be7e5c9fd9eacbbb9a6c762432e56
2011-10-04 10:48:35 -07:00
Igor Bukanov
9dc4e22f8a bug 678830 - Use JSScript, not script objects, in compile/evaluate API. r=jorendorff 2011-09-02 08:46:00 +02:00
Jim Blandy
fab58c0d9c Bug 673125: Have each JSScript maintain both a count and a flag indicating whether it should be in single-step mode. r=jorendorff.
The rationale is explained in the comments in jsscript.h.
2011-08-23 14:44:22 -05:00
Jason Orendorff
98bf4dad58 Back out 7196b000f9df (bug 673125 part 2). 2011-08-23 15:34:59 -05:00
Jim Blandy
0cf47b01d9 Bug 673125: Have each JSScript maintain both a count and a flag indicating whether it should be in single-step mode. r=jorendorff.
The rationale is explained in the comments in jsscript.h.

--HG--
extra : rebase_source : 0d537b172ce70c049269b1f09380f0eeabec9c92
2011-08-23 14:44:22 -05:00
Steve Fink
93cd3119ac Bug 673631 - Clean up probes and register (almost) all profiler control entry points in JS_DefineProfilingFunctions (r=luke,waldo,jst)
Previously, JS_DefineProfilingFunctions only defined a very basic set of
functions (startProfiling and stopProfiling), and various scattered places
added more specific ones (start/stop vtune, dumpProfile, etc.) This patch makes
jsdbgapi do all of it, so that all users get the same set.

Also rename JS_DumpProfile -> JS_DumpBytecode to avoid name conflict. The
bytecode dumps are how the counters ("profiles") are displayed, so the
DumpProfile name was bogus anyway.

--HG--
extra : rebase_source : 2d3e626ef43ac41c6da401a779775a63fc96a427
2011-07-26 15:56:09 -07:00
Jason Orendorff
0cc8abb074 Merge from mozilla-central to jsdbg2. 2011-08-01 17:46:33 -05:00
Jason Orendorff
c4f527861a Merge from mozilla-central to jsdbg2. 2011-07-28 13:45:51 -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
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
Nick Fitzgerald
9098b89abc Bug 674283 - Add source map urls to JSScript. r=jorendorff. 2011-07-29 10:44:45 -05: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
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
fcfd80cfc5 Merge from TM. Huge merge. Stack changes from bug 656462. 2011-06-15 16:14:09 -05:00