Commit Graph

478 Commits

Author SHA1 Message Date
Nicholas Nethercote
795d4b8ad2 Bug 556353 - Remove OBJ_IS_NATIVE, HAS_FUNCTION_CLASS. r=brendan. 2010-03-31 22:13:51 -07:00
Jason Orendorff
24aa3470aa Bug 556315 part 2 - JSObject::getGlobal() and JSStackFrame::getThisObject(). r=gal.
--HG--
extra : rebase_source : 103e73537d3c2f537a914b69a620136451a664ba
2010-03-31 17:57:03 -05:00
Robert Sayre
baeb2d1edf Merge mozilla-central to tracemonkey. 2010-03-30 21:13:01 -07:00
Nicholas Nethercote
684396fb91 Bug 555631 - Convert STOBJ_* macros to inline functions. r=gal. 2010-03-30 14:42:48 -07:00
Jeff Walden
560212f1a8 Readd all jsobj.cpp and related changes from bug 548702. 2010-03-28 20:32:20 -07:00
Jeff Walden
7b7b7b4bd1 Fix mismerge. 2010-03-26 22:57:23 -07:00
Jeff Walden
0973dfd6ab Merge. 2010-03-26 21:53:40 -07:00
Jeff Walden
95422c65a3 Backed out changeset e7065853ef79; I'll be repushing this incrementally, attempting to find the precise place where things go bad, in the near future. Happy days are here again! :-\ 2010-03-26 18:01:54 -07:00
Jason Orendorff
d5f9ef6c2a Bug 500431 part 3 - Rename JSPropertyCache to js::PropertyCache and other renamings. r=brendan. 2010-03-24 21:20:44 -05:00
Andreas Gal
06be8164da Public JS API for new ES5 Object functions (551595, r=jwalden). 2010-03-24 12:36:42 -07:00
Brendan Eich
f819b36cf4 Use direct object shape instead of identity as key for deep property cache hits (497789, r=jorendorff). 2010-03-22 11:11:44 -07:00
Jason Orendorff
289a8b3513 Bug 530583 - Delete silly JS_INT32_TO_PTR etc. macros. r=jwalden.
--HG--
extra : rebase_source : ccd52d3c33a3fd984fb5588ef12cbf9a6a80c423
2010-03-16 10:41:28 -05:00
Andreas Gal
5bea94fbab Backed out changeset 1732da7b3164 2010-03-15 16:13:49 -07:00
Andreas Gal
093f809d06 Allow class of native objects to change (552552, r=jorendorff). 2010-03-15 16:07:28 -07:00
Jeff Walden
ee34aa693a Bug 551007 - Make JSScopeProperty::attrs private, hide information behind accessor methods. r=jorendorff 2010-03-08 15:44:59 -07:00
Jeff Walden
e2df507656 Bug 551529 - Remove __count__. r=shaver 2010-03-12 17:09:49 -08:00
Robert Sayre
84b14d6f30 Merge mozilla-central to tracemonkey. 2010-03-13 11:51:12 -05:00
Jeff Walden
106fbd8085 Bug 548702 - Temporary value-rooting scheme should be C++- and RAII-based, not macro-based. r=igor
--HG--
extra : rebase_source : c7bb34662dbd70df49d40880227139537c60356e
2010-01-11 11:52:21 -06:00
Jason Orendorff
bfaa2dc218 In case of OOM in DEBUG build, don't crash. No bug, rs=jwalden via IRC.
--HG--
extra : rebase_source : c08508a93d1c1a98606dc1c7c8d9c08c57e17cad
2010-03-05 16:29:44 -06:00
Igor Bukanov
9d1cbd468c bug 549010 - folowup to replace PROTO access macros with the inlne function 2010-03-04 23:52:52 -08:00
Mike Moening
0373a2437d bug 549010 - fixing and silencing MSVC warnings. r=brendan,igor 2010-03-04 20:44:09 -08:00
Robert Sayre
5cf27a725e Merge tracemonkey to mozilla-central. 2010-03-26 15:53:14 -07:00
Nicholas Nethercote
c8a754a27d Bug 545274 - nanojit: start adding alias info to loads/stores/calls (TM-specific part). r=jseward. 2010-03-02 13:47:17 +11:00
Jason Orendorff
ad75218737 Bug 539170 - Encapsulate JSScopeProperty::{getter,setter} and move assertions to init-time. r=Waldo. 2010-02-24 17:40:28 -08:00
Andreas Gal
18afa9f743 Setters/getters can be callable objects (547912, r=brendan). 2010-02-22 22:25:09 -08:00
Andreas Gal
1aabb47ea6 Followup fix for 547314. We have to unwrap in the typeOf hook due to wrapper lameness. 2010-02-22 19:30:22 -08:00
Andreas Gal
7fc1c8efb0 Introduce ObjectOps for typeOf and make trace a mandatory ObjectOp (547314, r=brendan). 2010-02-22 16:30:22 -08:00
Andreas Gal
bd338bc100 Test whether obj IsCallable instead of VALUE_IS_FUNCTION for call and apply (547046, r=mrbkap). 2010-02-22 14:07:50 -08:00
Andreas Gal
1988a59472 Reland previously backed out bug 547086, it didn't cause the regression after all. 2010-02-21 00:11:54 -08:00
Robert Sayre
b2bb3cb03a Patch for bug 547086 is causing a crash in the js tests. Backed out changeset 10a40c748aed 2010-02-20 07:54:48 -08:00
Andreas Gal
8afa0aa3fe js_TryMethod suppresses 'too much recursion' exception, going in circles indefinitely (bug 547086, r=mrbkap). 2010-02-19 17:34:32 -08:00
Jason Orendorff
68642d97db Bug 547274 - js_InitArrayClass is not thread-safe. r=brendan.
--HG--
extra : rebase_source : 4b9ca0af846d7b77601ebbbf642941ffd136c9c8
2010-02-19 13:05:00 -06:00
Igor Bukanov
debaa592f7 bug 545529 - caching Class.prototype lookups. r=brendan 2010-02-19 20:44:23 +03:00
Gregor Wagner
dc4711d401 BUG 545303: TM: non API function for JS_CallTracer r=igor 2010-02-18 13:16:02 -08:00
Luke Wagner
6cc06f3b7b Bug 546668 - obj_eval should still call js_GetScriptedCaller (r=mrbkap) 2010-02-17 11:16:11 -08:00
Luke Wagner
df420a425b Bug 542797 - change obj_eval from JSNative to JSFastNative (r=mrbkap)
--HG--
extra : rebase_source : 5138b86418081cfa331b05947e5988c1f81065ef
2010-02-16 17:41:39 -08:00
Jason Orendorff
095bd890ef Bug 539829 - Encapsulate JSScope::flags. r=Waldo.
--HG--
extra : rebase_source : ced4f057e715075d8e4eff343e824d8934152a7e
2010-02-05 18:11:13 -06:00
Igor Bukanov
75a3004377 bug 543839 - js_NonEmptyObject must lock the object. r=jorendorf 2010-02-05 10:41:54 +03:00
Igor Bukanov
f74b35769d bug 538463 - caching only single-threaded objects. r=jorendorff 2010-02-03 13:42:07 +03:00
Igor Bukanov
008691b6f9 Backed out changeset b9700adc3951 - the landing for the bug 538463 had wrong changes 2010-02-03 13:37:56 +03:00
Igor Bukanov
7aafadcc76 bug 538463 - caching only single-threaded objects. r=jorendorff 2010-02-03 12:46:10 +03:00
Luke Wagner
7714144859 Bug 535656 - remove JSStackFrame::dormantNext and varobj (r=waldo) 2010-01-29 18:25:16 -08:00
Igor Bukanov
836b8a84eb bug 540805 - using reference counting only for empty scopes. r=jorendorff 2010-01-27 09:50:17 +03:00
Igor Bukanov
450cf95e35 bug 538275 - ClaimTitle cleanup. r=brendan, jorendorff 2010-01-24 14:15:38 +03:00
Luke Wagner
2645ecd2da Bug 541452 - put jstracer.cpp in namespace js (r=jorendorff) 2010-01-22 14:49:18 -08:00
Brendan Eich
3cf53a31d6 Bug 513291 - JSOP_INITPROP should insist obj has own scope (JSOP_NEWINIT knows to do this; r=jorendorff). 2010-01-07 11:47:16 -08:00
Brendan Eich
85a5badeef ES5-conformance fix to make a new RegExp for each regexp literal evaluation (98409, r=igor/jwalden). 2010-01-06 15:12:54 -08:00
Jason Orendorff
e5ac8476fd Backed out changeset 3862a7e48e79 due to tinderbox failures on js1_5/GC/regress-324278.js. 2010-01-05 12:48:09 -06:00
Brendan Eich
1b4fbd91e6 ES5-conformance fix to make a new RegExp for each regexp literal evaluation (98409, r=jwalden). 2010-01-04 12:25:44 -08:00
Jeff Walden
9b553541fa Bug 537725 - Adjust some exception-throwing code to use the proper APIs for no-argument messages, and fix handling of some primitive values passed as the Properties argument to Object.defineProperties. r=jorendorff 2010-01-04 13:48:30 -06:00
Brendan Eich
45c0afef62 Merge. 2009-12-30 13:50:31 -08:00
Brendan Eich
398f5f3b9b Bug 537204 - No more BOGUS_CX bogosities (r=jwalden). 2009-12-30 13:49:26 -08:00
Jeff Walden
e59ff3661d Bug 492840 - Fix a conflict with myself in the previous push. Aaargh... 2009-12-30 15:20:21 -06:00
Ben Newman
0c4845ffec Bug 553448 - nsScriptSecurityManager::ContentSecurityPolicyPermitsJSAction should return JS_TRUE when no subjectPrincipal exists. r=mrbkap sr=dveditz
--HG--
extra : rebase_source : c47d6d55063c115921ee89114c4439444883c37d
2010-03-18 17:27:39 -07:00
Brendan Eich
371b9215e0 NPOTB: fix #ifdef NARCISSUS code. 2010-03-14 15:26:55 -05:00
Sid Stamm
47a3291b46 bug 515443 CSP no-eval support. r=mrbkap,brendan 2010-03-08 00:24:50 -08:00
Jeff Walden
49c30c2502 Bug 492840 - ES5: Implement Object.create. r=mrbkap 2009-09-08 15:59:14 -07:00
Jeff Walden
9613c2771b Bug 430133 - Address an overlooked review comment. r=sparky 2009-12-30 14:25:27 -06:00
Igor Bukanov
0553ca4a34 bug 536734 - more finalizer specializations. r=brendan 2009-12-30 14:06:26 +03:00
Jeff Walden
285792a4b4 Bug 430133 - Implement ES3.1's Object.defineProperty and Object.defineProperties. r=jorendorff 2009-06-05 12:56:45 -07:00
Blake Kaplan
a950e7cc20 Bug 536512 - Ignore security wrappers when computing instanceof. r=brendan
--HG--
extra : rebase_source : 685f05cbb79288a976242c2b4908023a7ed1b035
2009-12-23 14:09:08 -08:00
Jeff Walden
e9d69cbf2e Bug 529404 - Assignments to a property that has a getter but not a setter should not throw a TypeError per ES5, except in strict mode. r=brendan 2009-12-08 17:00:42 -08:00
Jason Orendorff
8b449748c7 Fix "bug NNNNNN" in a comment to point to the actual bugzilla bug. r=nobody. 2009-12-17 14:24:39 -06:00
Brendan Eich
e3b2653ade Bug 533705 - Lock proto-scope around canProvideEmptyScope/getEmptyScope; check for slot mismatch in js_AddProperty; don't optimize for slot mismatch in JSOP_SETPROP. r=jorendorff.
--HG--
extra : rebase_source : 4d49e9ef150286db93f2e5e1c77b217832263f83
2009-12-16 18:11:19 -06:00
Gregor Wagner
5d706bfc9a fix JS_SCOPE_DEPTH_METER and enable in DEBUG mode
bug #528674, r=gal
2009-12-14 18:36:58 -08:00
Andreas Gal
ab4554e731 Only consider an eval cache entry if the static level matches (532491, r=igor). 2009-12-03 12:12:39 -08:00
Igor Bukanov
969bdae222 bug 531682 - fixing eval(source, scope) to match 191, 192 semantics. r=mrbkap 2009-12-02 19:22:34 +03:00
Robert Sayre
3192563f6f Reland bug 473228 and bug 530507 2009-12-01 16:02:09 -05:00
Robert Sayre
03f335335d Relanding Tolerate race condition or broken resolve hook (530507, r=jorendorff). Backed out changeset fb34a7163a43 2009-12-01 15:54:01 -05:00
Robert Sayre
8dac81dafc Merge 2009-12-01 15:51:22 -05:00
Robert Sayre
4ea539c658 Relanding: Bye-bye middle-deletes and their O(n^2) worst case complexity; hello dictionary-mode scopes (473228, r=jorendorff). Backed out changeset ee7bfc1923ad 2009-12-01 15:49:15 -05:00
Robert Sayre
8be5b171b9 Backed out changeset c03ebf340688. Bye-bye middle-deletes and their O(n^2) worst case complexity; hello dictionary-mode scopes (473228, r=jorendorff). 2009-12-01 09:56:16 -05:00
Robert Sayre
5d08f03267 Backed out changeset c696751593d6. Tolerate race condition or broken resolve hook (530507, r=jorendorff). 2009-12-01 09:54:38 -05:00
Robert Sayre
5d34830070 Backout bug 473228 and its follow-up, temporarily, to attempt a clean merge of other stuff. 2009-12-01 09:57:20 -05:00
Robert Sayre
708784babe Merge backout. 2009-12-01 09:54:57 -05:00
Igor Bukanov
a3f5d5c07b bug 531037 - eval fixes. r=brendan 2009-12-01 00:01:11 +03:00
Brendan Eich
5120898335 Tolerate race condition or broken resolve hook (530507, r=jorendorff). 2009-11-25 13:49:15 -08:00
Brendan Eich
c731045c51 Bye-bye middle-deletes and their O(n^2) worst case complexity; hello dictionary-mode scopes (473228, r=jorendorff). 2009-11-20 16:14:42 -08:00
Jim Blandy
e1243b3edc Bug 514560: Forbid assignments to undeclared variables in strict mode code. r=jorendorff
--HG--
rename : js/src/tests/ecma_5/strict/shell.js => js/src/tests/js1_8_1/strict/shell.js
2009-11-19 12:35:55 -08:00
Jim Blandy
a1ea615b02 Bug 521868: Make code passed to a direct call to eval inherit the caller's strictness. r=jorendorff 2009-11-19 09:48:59 -08:00
Jason Orendorff
cd32782f94 Bug 505523 - Property cache can skip JSClass::resolve or JSClass::addProperty hooks. r=graydon, r=brendan.
--HG--
extra : rebase_source : a77b0e81203010aabe07b92b639762dce83200c0
2009-11-18 14:29:58 -06:00
Blake Kaplan
e4ee1ce1bf Bug 528126 - Ensure the GC can see the new object. r=brendan 2009-11-18 15:54:27 +01:00
Jeff Walden
05bcc1bbb2 Backed out changeset 975b36c50d33; bug 478047's fix was misguided and contra ES5, and moving to ES5 semantics at this late date in the release cycle seems unwise. We'll move from old and busted directly to ES5 shortly after 3.6 so as to provide maximum time for ironing out incompatibilities in the wild. r=gal 2009-11-16 17:21:48 -08:00
Jeff Walden
926066f46d Bug 520890 - obj_getOwnPropertyDescriptor nests object locks. r=jorendorff 2009-11-09 16:16:28 -08:00
Jeff Walden
e53d0c2e48 Backed out changeset 2fe1a3d6e672, enough philosophically-vexing orange that I'm unwilling to adjust all the tests without discussion (or, alternately, leave it in place until morning). 2009-11-12 00:57:18 -08:00
Jeff Walden
152d62d222 Bug 523846 - Assignments to a property that has a getter but not a setter should not throw a TypeError per ES5 (at least not until strict mode is supported). r=brendan
--HG--
extra : rebase_source : 7d47eb44d21f17bfa11aeadca2ff980336315eca
2009-11-10 18:03:41 -08:00
David Mandelin
5ee0760ca7 Bug 519363 debugging followup: strip diagnostic instrumentation, r=lw 2009-11-09 16:57:47 -08:00
Blake Kaplan
d313c0f49d Bug 520164 - Protect the interpreter from non-expected scope chains and variable objects. r=igor
--HG--
extra : rebase_source : cd169a070e85100af7931864201da28effffcfec
2009-10-30 17:31:15 +01:00
Robert Sayre
8218769bc0 Merge mozilla-central to tracemonkey. 2009-10-29 08:48:15 -07:00
Brendan Eich
02c0dc3df2 Factor jsscopeinlines.h out, clean up #include order (524267, r=gal/jorendorff). 2009-10-26 13:39:39 -07:00
Robert Sayre
dd8b93c5d3 Merge mozilla-central to tracemonkey. 2009-10-26 13:29:48 -04:00
Jim Blandy
0c5e3d3554 Bug 522123: Don't reify lazy scope chain blocks twice in 'eval'. r=mrbkap 2009-10-21 14:34:55 -07:00
Blake Kaplan
229925b044 Bug 520511 - Add some tvrs. r=brendan 2009-10-21 11:46:07 -07:00
Brendan Eich
9f9a05b0c3 Don't build a stack frame to execute empty scripts (516827, r=igor). 2009-10-18 17:41:24 -07:00
Igor Bukanov
af1a5810f7 bug 505315 - constructing GC free lists during finalization. r=brendan 2009-10-16 10:10:54 +04:00
Igor Bukanov
9212853abd Backed out changeset 487b81c753c0 - landing of bug 505315 caused talos crashes across platforms. 2009-10-15 13:53:40 +04:00
Igor Bukanov
0d37930589 bug 505315 - constructing GC free lists during finalization. r=brendan 2009-10-15 11:41:08 +04:00
Robert Sayre
8e2e9f852b Merge tracemonkey to mozilla-central. 2009-10-10 20:42:24 -05:00
Jim Blandy
f4a407f114 Bug 515233: Make the static level its own parameter to JSCompiler::compileScript. r=igor
Pre-patch, the initial static level at which a script should be
compiled to run is passed in the upper sixteen bits of the tcflags
parameter to JSCompiler::compileScript; because JSTreeContext::tcflags
is a uint16, while the tcflags parameter is a uint32, we know the
parameter's upper bits are free.

However, we would like to enlarge JSTreeContext::tcflags to 32 bits,
as we already have a handful of new flags that belong there.  This
patch moves the static level to its own parameter, which has a default
argument.
2009-10-08 10:29:03 -07:00
Jim Blandy
0d6cdd1921 Bug 514585: Use bitfields in JSScript instead of a flag word. r=brendan
This is behavior-neutral cleanup in preparation for the real patch.
2009-10-08 10:29:03 -07:00