Commit Graph

227 Commits

Author SHA1 Message Date
Bill McCloskey
620898670f Bug 728086 - Back out f4e8839c28f5 to fix Windows purple builds 2012-02-22 13:38:34 -08:00
Bill McCloskey
5ea3251fb9 Bug 728086 - Poison the stack when not in use (r=luke) 2012-02-22 10:36:12 -08:00
Bobby Holley
b038453297 Bug 717113 - Make js::IsWrapper fully inline-able. r=luke 2012-02-21 10:31:35 -08:00
Terrence Cole
db54cc864e Bug 726845 - Make Value marking interfaces indirect; r=billm
This will eventually allow the GC to update Values that reference an Object,
when moving an object.
2012-02-15 17:16:53 -08:00
Jason Orendorff
e1d9162904 Bug 699565 - Part 3 - for-of loops on wrappers. r=bhackett. 2012-02-07 12:57:16 -06:00
Luke Wagner
864734648c Bug 688069 - fix String.prototype.{replace,match,search,split} for transparently wrapped RegExp arguments (r=cdleary)
--HG--
extra : rebase_source : 52e43bfbd134f8afcff15b354fcb777d9b0e71ba
2012-02-01 13:36:48 -08:00
Blake Kaplan
2718588789 Bug 723111 - Add an option to js::UnwrapObject so that it doesn't stop at outer windows when unwrapping. This is useful for cases where we are trying to find the wrapped native for a security wrapper. r=bzbarsky 2012-01-26 14:55:27 +01:00
Phil Ringnalda
23ca89ddfb Back out 9aac714775b9 (bug 723111) for make check orange 2012-02-01 10:25:04 -08:00
Blake Kaplan
7cce8db259 Bug 723111 - Add an option to js::UnwrapObject so that it doesn't stop at outer windows when unwrapping. This is useful for cases where we are trying to find the wrapped native for a security wrapper. r=bzbarsky
--HG--
extra : rebase_source : 51216cf21b63554e50633c89f393c5888241dee2
2012-01-26 14:55:27 +01:00
Brian Hackett
96e072a772 Store JSStrings instead of jsids in native key iterators, bug 713754. r=dvander 2012-01-18 16:56:22 -08:00
Luke Wagner
a7cae60147 Bug 714547 - SecurityWrapper should not interfere with same-document.domain access (r=mrbkap)
--HG--
extra : rebase_source : ffc6e1920dccdd194269fa7056113944863e0419
2012-01-09 15:32:53 -08:00
Luke Wagner
6e9feca701 Bug 713311 - give the remaining scope objects typed interfaces (r=waldo)
--HG--
rename : js/src/vm/CallObject-inl.h => js/src/vm/ScopeObject-inl.h
rename : js/src/vm/CallObject.cpp => js/src/vm/ScopeObject.cpp
rename : js/src/vm/CallObject.h => js/src/vm/ScopeObject.h
extra : rebase_source : 0efa6c9ac4ceb10f48fe7ee7b199333da2b54cd9
2012-01-02 15:02:05 -08:00
Brian Hackett
73956e1912 Merge MC -> JM 2011-11-26 15:03:20 -08:00
Brian Hackett
3afca6b036 Merge MC -> JM 2011-11-14 09:13:33 -08:00
Luke Wagner
86474973a1 Bug 698299 - rm bogus assert in SecurityWrapper::nativeCall (r=mrbkap)
--HG--
extra : rebase_source : 76029f08a99557061e33550165267488acf38e9b
2011-11-10 21:55:35 -08:00
Brian Hackett
8e5e57fc40 Merge MC -> JM 2011-10-27 14:16:02 -07:00
Jan de Mooij
daf7178298 Bug 697076 - Fix some Clang warnings. r=luke 2011-10-26 11:50:40 +02:00
Brian Hackett
45e7531bb4 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
9c64bfccd6 Remove JSObject::getFunctionPrivate, add call scope to JSFunction, bug 693754. 2011-10-11 15:28:54 -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
5d4b516710 Bug 690825 - Add a SecurityWrapper base between JS transparent wrappers and XPConnect security wrappers (r=mrbkap)
--HG--
extra : rebase_source : c3b2057a725ddda79f2f9f8f1d8ef6a4c8581124
2011-10-04 10:50:25 -07:00
Luke Wagner
a2c8ca61d4 Bug 692366 - Soften nativeCall assert to allow for generic non-generic methods (yeah, that's right) (r=waldo)
--HG--
extra : rebase_source : 3bca2d458118cce3959f978a36a5c5aa85a5ef9c
2011-10-07 11:58:47 -07:00
Bill McCloskey
8e7a5d934a Bug 641027 - Add snapshot-at-the-beginning write barriers for incremental GC (r=luke,bhackett) 2011-10-25 16:07:42 -07:00
David Anderson
4b78345140 Remove LeaveTrace and related structures (bug 698201 part 5, r=luke). 2011-11-22 17:41:43 -05:00
Chris Leary
5c524e2fd4 Bug 691695: Refactor RegExp components as prep for lazifying. (r=luke)
--HG--
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
2011-10-04 23:48:32 -07:00
Luke Wagner
46803bb586 Bug 683361 - Fix part 6: add and call Proxy::objectClassIs (r=waldo)
--HG--
extra : rebase_source : b387bc288a45fc985df06ce2ca84823cf45803b3
2011-09-28 08:48:16 -07:00
Luke Wagner
2ca10ad65e Bug 683361, part 5 - Handle transparent proxies correctly in [[Class]] == "X" queries (r=waldo)
--HG--
extra : rebase_source : 42d32c87f8cffc765649bbb5890009edfb4a4807
2011-09-20 16:48:50 -07:00
Luke Wagner
d8b2ca4ce3 Bug 683361, part 3 - add ProxyHandler::nativeCall (r=mrbkap)
--HG--
extra : rebase_source : 4494ddfc1e3f76bf550013c199a3f3b17a5e941f
2011-09-08 21:06:41 -07:00
Luke Wagner
7ff16e4820 Bug 683361, part 1 - Strip JS prefix from proxy names since they are already in namespace js (r=gal)
--HG--
extra : rebase_source : 5eded8e02c36991322c94fca1092970910c2ceea
2011-09-08 20:29:15 -07:00
Jeff Walden
37632bfcb5 Bug 687621 - Convert getProperty to take a PropertyName*, and make getGeneric the only way to get a property for a jsid. r=luke 2011-09-15 11:44:10 -07:00
Luke Wagner
61f76ef0bd Bug 684526 - Remove Jsvalify/Valueify (r=waldo)
--HG--
extra : rebase_source : a3047338ed088c26a93486addd0be8092fe52934
2011-09-20 11:40:24 -07:00
Luke Wagner
357b5b8cf8 Bug 684110 - Clean JSObject::clasp usage (r=pbiggar) 2011-09-02 17:23:26 -07:00
Ed Morley
2d385ce59f Backout bug 684110 (08b6eaf6aad0, cf8b35fa1010, 25ee45edabe1, 659f5c7d2cc9, 870f6dd82586 & e1ad65d6a7fd) and bug 684344 (cd1957f6628d) on a CLOSED TREE; a=bustage-fairies 2011-09-03 03:21:25 +01:00
Luke Wagner
39242fcb8c Bug 684110 - Clean JSObject::clasp usage (r=pbiggar) 2011-09-02 17:23:26 -07:00
Brian Hackett
45b8a69877 Merge MC -> JM 2011-08-21 16:00:26 -07:00
Luke Wagner
5f3109a26e Bug 676937 - Make entering a compartment and pushing a dummy frame an atomic stack operation (r=mrbkap) 2011-08-05 14:06:33 -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
Luke Wagner
fb1c834edd Bug 676937 - Make entering a compartment and pushing a dummy frame an atomic stack operation (r=mrbkap) 2011-08-10 17:34:42 -07:00
Luke Wagner
bfcd3382e4 Bug 676937 - Make entering a compartment and pushing a dummy frame an atomic stack operation (r=mrbkap)
--HG--
extra : rebase_source : 5c5bfe6968e92ae9039cc65af919bd1519260492
2011-08-05 14:06:33 -07:00
Jason Orendorff
fbb0edbd8d Merge jsdbg2 to mozilla-inbound. See bug 672829. 2011-08-13 13:29:18 -05:00
Jason Orendorff
d0dae6067c Merge from mozilla-central to jsdbg2. 2011-08-12 18:18:59 -05:00
Luke Wagner
7c1365819b Bug 676937 - Make entering a compartment and pushing a dummy frame an atomic stack operation (r=mrbkap) 2011-08-05 14:06:33 -07:00
Jason Orendorff
e03d6ae0ab Bug 679013 - jsdbg2: Crash when a scripted proxy handler throws Error.prototype. r=Waldo. 2011-08-18 12:30:19 -05:00
Brian Hackett
bee5deec97 [INFER] Improve precision when SETELEM is used on singleton objects, bug 675167. 2011-08-01 22:24:29 -07:00
Brian Hackett
61733c8971 [INFER] Only allow expansion of all inline frames in a compartment, bug 675251. 2011-08-01 09:09:39 -07:00
Brian Hackett
89a7a7eac5 Merge MC -> JM 2011-07-15 14:40:15 -07:00
Jason Orendorff
7d92fa02e5 Add Debugger.Object.prototype.defineProperties and a few extra defineProperty tessts. 2011-07-13 06:46:23 -05:00
Jason Orendorff
12e082d98d Backed out changeset 93533be00e3e due to failing jstests. 2011-07-13 10:41:09 -05:00
Jason Orendorff
ef3cb9f6dc Add Debugger.Object.prototype.defineProperties and a few defineProperty tests. 2011-07-13 06:46:23 -05:00
Jason Orendorff
f5ce61ea3c Merge from mozilla-central to jsdbg2. 2011-07-12 10:47:31 -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
af9ef5c899 Fix SpiderMonkey GCC compiler warnings. No bug#, r=adrake. 2011-08-11 14:48:42 -05:00
Blake Kaplan
e9d975ff6a Bug 664689 - Deal with wrappers-around-wrappers here. r=gal
--HG--
extra : rebase_source : af67e8aded9aa89874c0d74bc9fd48df2268eafc
2011-06-28 14:00:19 -07:00
Brian Hackett
fa41f89faf [INFER] Read barriers for call results, bug 663381. 2011-06-10 19:03:57 -07:00
Bill McCloskey
2a3d5215a6 Bug 662646 - GC topcrash diagnostics [needs backout before Aurora merge!] (r=dmandelin) 2011-07-07 17:31:24 -07:00
Luke Wagner
c9e1bf13c0 Bug 667915 - Don't let content JS consume all the stack and cause chrome JS to OOM (r=waldo,mrbkap) 2011-06-30 09:26:56 -07:00
Brian Hackett
7fc14bc6e1 [INFER] Don't expand frames in contexts without a compartment, fix warnings, add type barrier comment. 2011-06-07 09:14:52 -07:00
Brian Hackett
020c4d8bac Merge TM -> JM 2011-06-06 16:47:40 -07:00
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
Brian Hackett
82abccdd14 [INFER] Move inference methods out of JSContext, bug 657412. 2011-06-02 10:40:27 -07:00
Brian Hackett
1e358b51f6 Merge TM -> JM 2011-05-22 08:59:06 -07:00
Jason Orendorff
2e05c87e09 Require the CCW slot of a Debug.Object object to contain an actual cross-compartment wrapper. That way, per-compartment GC never collects referents, simplifying sweep phase. 2011-05-21 00:40:33 -05:00
Jason Orendorff
8d48b54691 Merge from tracemonkey to jsdbg2. 2011-05-20 11:34:31 -05:00
Brian Hackett
98763bc2cb [INFER] Move addTypeProperty barriers under obj->setProperty, obj->defineProperty, bug 619693. 2011-05-16 16:15:37 -07:00
Jeff Walden
5c5308cfad Bug 692333 - Split setProperty into property and generic forms, and use them throughout the engine. r=bhackett
--HG--
extra : rebase_source : 9239eb648466f929733428eb1a18bb0c0af51506
2011-10-05 17:16:25 -07:00
Brian Hackett
417f1e64b9 [INFER] Remove on stack recompilation, allow removed on stack JIT frames to rejoin into the interpreter, bug 650163. 2011-05-09 07:12:47 -07:00
Jason Orendorff
a0e4b2bf22 Merge from tracemonkey to jsdbg2. 2011-04-29 10:12:46 -05:00
Brian Hackett
838352f9db Merge TM -> JM 2011-04-28 13:02:47 -07:00
Jason Orendorff
782cb92948 Merge from tracemonkey to jsdbg2. 2011-04-26 14:45:06 -05:00
Blake Kaplan
08a8f3a6ab Bug 654370 - Initialize bp to false to avoid reading random memory. r=gal
--HG--
extra : rebase_source : 0a3b1b9e203d0ccc5bf33998f1509bef1beae36c
2011-05-17 09:25:06 +02:00
Brian Hackett
fe5aeaab19 Merge TM -> JM 2011-04-20 11:37:46 -07:00
Bill McCloskey
3c0cd83aa3 Bug 616666 - Use explicit stack for GC marking (r=gal) 2011-04-15 16:56:08 -07:00
Jason Orendorff
b75e7c3ef8 Make 'Debug(w)' and 'new Debug(w)' return a new Debug object. The argument w must be a cross-compartment wrapper. 2011-04-14 22:03:31 -07:00
Brian Hackett
3756228559 [INFER] Use both inline and dynamic slots for objects other than dense arrays, bug 648321. 2011-04-08 19:51:40 -07:00
Brian Hackett
a1f196a052 [INFER] More fixes for stock JM behavior, bug 647048. 2011-04-01 17:26:34 -07:00
Jeff Walden
9d216339ba Bug 646129 - [[DefaultValue]] on Date objects is wrong when called with no hint. r=luke 2011-04-01 15:24:21 -07:00
Blake Kaplan
96c422f69a Bug 662114 - Don't use DummyFrameGuard directly to avoid Windows DLL-linkage warnings. r=luke
--HG--
extra : rebase_source : 8ef14ff1cecaa7f426adc55b3a1ad205f00d0b8c
2011-06-07 19:43:18 -04:00
Brian Hackett
74bba0be53 [INFER] Inline scripted calls, bug 639099. 2011-03-26 19:07:13 -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
Brian Hackett
0d6e549246 [INFER] Mark all cross-compartment iterations as producing unknown values, bug 641224. 2011-03-13 21:40:55 -07:00
Brian Hackett
58c0e1b4c9 [INFER] Update property types when defining properties through wrappers, bug 639529. 2011-03-11 07:20:47 -08:00
Brian Hackett
d639ada378 Merge TM -> JM 2011-03-09 09:58:49 -08:00
Brian Hackett
41091b1bb6 [INFER] Fix OOM handling in type inference, convert inference to runtime option, bug 637674. 2011-03-03 14:07:48 -08:00
Brian Hackett
0a2cdd3c56 Merge TM -> JM 2011-02-25 18:21:43 +13:00
Andreas Gal
37635547a6 Bug 633879 - Stop wrappers from holding old scopes alive. r=mrbkap@gmail.com,jst@mozilla.com, a=blocker 2011-02-14 14:19:36 -08:00
Jim Blandy
de75b9fa19 Bug 537873: Add a 'strict' argument to C++ property setter functions. r=brendan
This changes the type of setters to JSStrictPropertyOp, which is just like
JSPropertyOp except that it takes a 'JSBool strict' argument. Most of the
patch is introducing distinct types and using the appropriate stubs.

The following are left for subsequent patches:

x Similar fixes to the browser outside SpiderMonkey.

x Actually *using* the newly available strictness information. This patch
  should have no user-visible effect. I didn't want the interesting stuff
  to get lost in this noise.
2011-02-09 11:31:40 -08:00
Brian Hackett
cde265e645 [INFER] Fixes for jstests, bug 620599, part 2. 2010-12-21 18:26:09 -08:00
Luke Wagner
e4b911a00d Bug 690825 - Fix nativeCall assert; HandleNonGenericMethodClassMismatch should not assume args.callee() is the native (r=waldo)
--HG--
extra : rebase_source : db9b9d249feca5a29cb8fc8581db86dda8b75453
2011-10-04 10:48:36 -07:00
Brian Hackett
3c98e66bc7 Fix bug 616711. r=gal 2010-12-14 06:34:46 -08:00
Blake Kaplan
6deeefba3d bug 601803 - Support adopting a node cross-compartment. r=gal/jst 2010-11-15 17:21:25 -08:00
Blake Kaplan
bd44733edc Backout due to bustage 2010-12-02 17:13:20 -08:00
Blake Kaplan
439ca83a7b bug 601803 - Support adopting a node cross-compartment. r=gal/jst 2010-11-15 17:21:25 -08:00
Luke Wagner
13df4fa0d9 Back out rev 0bd518ded931 due to suspected Dromaeo(SunSpider) regression 2011-08-12 09:48:19 -07:00
Andreas Gal
a5b7649d5d typeof(regexp from sandbox) is "function" (bug 607799, r=brendan). 2010-11-10 15:56:00 -08:00
Andreas Gal
80068e5cca Silenty return undefined instead of throwing when content tries to access non-exposed chrome properties (bug 594999, r=mrbkap). 2011-01-29 18:48:30 -08:00
David Anderson
783f963055 Get rid of value snapshotting in value iterators (bug 624421, r=luke,gal). 2011-01-14 17:15:21 -08:00
Andreas Gal
ffad8e83db Allow entering a compartment with a pending exception (bug 626267, r=luke). 2011-01-17 14:21:03 -08:00