Commit Graph

90 Commits

Author SHA1 Message Date
brendan@mozilla.org
404002f4ae Use JS_PropertyStub for in-language bindings, for best property cache hit rates (416931, r=mrbkap). 2008-02-17 22:31:57 -08:00
brendan@mozilla.org
fc623a24eb Optimize ComputeGlobalThis (395993, r=mrbkap). 2008-02-15 18:46:46 -08:00
igor@mir2.org
f86e5a86d2 Bug 416601: property cache is properly disabled under with statements with generators. r=brendan a1.9=blocking1.9 2008-02-15 03:38:40 -08:00
shaver@mozilla.org
08cc7ed6d6 back out for mochitest failures in prototype 2008-02-15 02:31:38 -08:00
shaver@mozilla.org
19f85281c0 Bug 322889: implement specialized storage and operations for JS arrays; r+a=brendan. 2008-02-15 01:48:53 -08:00
gavin@gavinsharp.com
be5dd93507 Back out bug 322889 due to jQuery unit test failures 2008-02-14 18:41:18 -08:00
shaver@mozilla.org
4b517f103c Bug 322889: implement specialized storage and operations for JS arrays; r+a=brendan 2008-02-14 17:07:53 -08:00
igor@mir2.org
5a2b665446 Bug 416354: optimizing switch cases in the inetrpreter, r,a1.9=brendan 2008-02-14 07:36:39 -08:00
igor@mir2.org
ac22737548 Bug 309894: non-recursive XML-filtering implementation. r,a1.9=brendan 2008-02-13 06:32:31 -08:00
brendan@mozilla.org
4e2eefd3a3 Cope with GC under js_{Find,Lookup}Property in ASSERT_VALID_PROPERTY_CACHE_HIT (417033, r=shaver). 2008-02-12 18:26:16 -08:00
brendan@mozilla.org
1bad15affa Export js_CheckForStringIndex from jsobj.c for use by assert in jsinterp.c (416460, r=shaver). 2008-02-10 17:12:29 -08:00
brendan@mozilla.org
cca60ec58a Missing unlock in propcache setprop/setname code, plus two cleanups (416478, r=shaver, mad props to jorendorff). 2008-02-08 19:02:57 -08:00
igor@mir2.org
98c2a791fd Attachment 302122: optimizing JSOP_NEG, r=brendan a=blocking1.9 2008-02-08 14:01:09 -08:00
brendan@mozilla.org
23c36b84f4 Return of the property cache (365851, r=shaver). 2008-02-07 15:18:45 -08:00
igor@mir2.org
43ba6ec933 Bug 400902: Backing out due to test failures. 2008-02-03 19:41:31 -08:00
igor@mir2.org
0bed6fb140 Bug 400902: specialized arena for fast allocation of double values.r,a=brendan ab3=mtschrep 2008-02-03 18:37:22 -08:00
igor@mir2.org
b57a98b51e Bug 400902: backing out due to test failures. 2008-02-01 11:59:59 -08:00
igor@mir2.org
ea03e8c6f0 Bug 400902: using a specialized GC arena for doubles. r,a=brendan a1.9b3=mtschrep 2008-02-01 10:39:23 -08:00
igor@mir2.org
b80ad65983 Bug 354135: protect against oo recursion in e4x. r,a=brendan, a1.9b3=mtschrep 2008-01-31 22:01:17 -08:00
igor@mir2.org
5c7d98ca57 Attachment 300249: better handling of numeric conversions. r,a=brendan 2008-01-29 21:35:34 -08:00
mrbkap@gmail.com
cc6a72a011 Outerize this when we're computing it. bug 394012, r=brendan 2008-01-29 18:16:56 -08:00
crowder@fiverocks.com
52337e9048 Bug 408113: allocate stackPools less often, r=brendan, a=blocking1.9 (schrep) 2008-01-29 18:11:30 -08:00
jst@mozilla.org
5be0f146b4 Fixing bug 413045. Make some JS API functions faster by accessing obj->fslots[] directly when possible. r=brendan@mozilla.org, r=igor@mir2.org. 2008-01-23 14:05:43 -08:00
igor@mir2.org
5732653d7d Bug 412340: avois rehashing of alreday atomized strings. r,a=brendan 2008-01-23 05:17:47 -08:00
igor@mir2.org
d8ee415593 Bug 410649: function statement and destructuring parameter name clash now favours the function. r,a=brendan 2008-01-20 02:34:06 -08:00
jwalden@mit.edu
84e3a1e6db Bug 409476 - js_ValueToBoolean is pure, remove cx and out parameters and just return a boolean value for better perf. r+a=brendan 2008-01-19 16:56:08 -08:00
reed@reedloden.com
34fb42c02c Back out Igor's patch from bug 412340 due to consistent orange on fxdbug-win32-tb. 2008-01-19 00:06:45 -08:00
igor@mir2.org
d4e057f519 Bug 412340: JString stores a flag to indicate that it was atomized. r=brendan a=blocking1.9+ 2008-01-18 18:56:51 -08:00
brendan@mozilla.org
d56e272e19 * Menu of -D flags for enabling instrumentation, as a commented-out CFLAGS += setting for convenient testing. * js_FindProperty and js_LookupPropertyWithFlags return indexes into the scope and prototype chains, respectively, to support internal instrumentation, and to pave the way for the return of the property cache (bug 365851).. * jsutil.[ch] JSBasicStats struct and functions for computing mean/sigma/max and auto-scaling histogram. * JS_SCOPE_DEPTH_METER instrumentation for compile- and run-time scope chain length instrumentation: + At compile time, rt->hostenvScopeDepthStats and rt->lexicalScopeDepthStats meter scope chains passed into the compile and evaluate APIs. + At runtime, rt->protoLookupDepthStats and rt->scopeSearchDepthStats track steps along the prototype and scope chains until the sought-after property is found. * JS_ARENAMETER uses JSBasicStats now. * Added rt->liveScopePropsPreSweep to fix the property tree stats code that rotted when property tree sweeping moved to after the finalization phase. * Un-bitrotted some DEBUG_brendan code, turned some off for myself via XXX. * Mac OS X toolchain requires initialized data shared across dynamic library member files, outlaws common data, so initialize extern metering vars. * Old HASHMETER code in jshash.[ch] is now JS_HASHMETER-controlled and based on JSBasicStats. * DEBUG_scopemeters macro renamed JS_DUMP_SCOPE_METERS; uses JSBasicStats now. * Disentangle DEBUG and DUMP_SCOPE_STATS (now JS_DUMP_PROPTREE_STATS) and fix inconsistent thread safety for liveScopeProps (sometimes atomic-incremented, sometimes runtime-locked). * Compiler-modeled maxScopeDepth will propagate via JSScript to runtime for capability-based, interpreter-inlined cache hit qualifier bits, to bypass scope and prototype chain lookup by optimizing for common monomorphic get, set, and call site referencing a prototype property in a well-named object (no shadowing or mutation in 99.9% of the cases). 2008-01-12 16:31:31 -08:00
igor@mir2.org
a9fa67b981 Bug 364776: New operation counter API to replace branch callback. r,a=brendan 2008-01-03 01:28:40 -08:00
brendan@mozilla.org
c02dbef876 XML/XMLList need toSource love (410192, r=mrbkap). 2008-01-02 12:25:59 -08:00
jruderman@hmc.edu
91424bc51f Backing out igor's fixes for bug 409109 and bug 364776 in an attempt to fix Tinderbox tgfx failures that are keeping talos red 2007-12-26 11:19:17 -08:00
igor@mir2.org
aa66348a18 Bug 364776: new operation callback API to replace branch callback. a,r=brendan 2007-12-25 02:12:26 -08:00
mrbkap@gmail.com
7c7e1261bf Give the JS engine some knowledge of wrappers so that they can compare equal and be noticed when they take part in __proto__ cycles; this was supposed to land before. bug 397855, r=brendan sr=dveditz 2007-12-21 01:10:59 -08:00
mrbkap@gmail.com
ace379fdfe Give the JS engine some knowledge of wrappers so that they can compare equal and be noticed when they take part in __proto__ cycles. bug 397855, r=brendan sr=dveditz 2007-12-20 14:59:44 -08:00
igor@mir2.org
16849a505a Bug 398219: avoid storing references to the global scope in the compiled scripts. r,a=brendan 2007-12-19 05:20:45 -08:00
brendan@mozilla.org
7d8fcab4dc Remove DUMP_CALL_TABLE (preliminary patch for 365851, r=igor). 2007-12-14 13:36:02 -08:00
igor@mir2.org
076f69ec85 Bug 398219: backing out the check in due to regression failures. 2007-12-12 12:08:24 -08:00
igor@mir2.org
1e5b233ff0 Bug 398219: avoid storing references to the global scope in the compiled scripts. r,a=brendan 2007-12-12 10:47:56 -08:00
igor@mir2.org
33dfb48ca3 Bug 406477: eval with function statements adds the function to the proper var object. r,a=brendan 2007-12-11 02:43:56 -08:00
reed@reedloden.com
f1fcf37818 Bug 407501 - "JSOP_NEWINIT lacks SAVE_SP_AND_PC" [p=igor@mir2.org (Igor Bukanov) r+a1.9=brendan aM10=damons] 2007-12-08 23:14:06 -08:00
igor@mir2.org
1c10d71daf Bug 405962: extra patch to move the switch case for CALL_PROP to a beter place in the source. r,a=brendan 2007-12-04 01:26:23 -08:00
igor@mir2.org
0ea5b6f14c Bug 405962: making sure that we can compile with !JS_HAS_XML_SUPPORT. a,r=brendan 2007-12-04 01:08:13 -08:00
jwalden@mit.edu
d3b11a2cbf Bug 376957 - Prevent data leaks from cross-site JSON loads (JavaScript literals), by making the global name bindings ReadOnly/DontDelete and making [] and {} use the global bindings. Still more that can be done here, but this covers a lot of the fix. r+a=brendan 2007-12-03 19:05:24 -08:00
igor@mir2.org
a0d8d9194e Bug 399544: using custom storage for function argument and variable names. r,a=brendan 2007-11-27 00:38:47 -08:00
igor@mir2.org
e46dc99233 Bug 394941: report exhausting of the script memory quota as ordinary runtime exceptions. r=brendan, a1.9=beltzner 2007-11-22 14:21:18 -08:00
igor@mir2.org
a4162380a8 Bug 398609: simpler handling of hidden properties, r,a=brendan 2007-11-19 09:15:45 -08:00
igor@mir2.org
7d6e57125d Bug 398609: backing out due to test failures. 2007-11-18 16:58:46 -08:00
igor@mir2.org
64dc5b1984 Bug 398609: cleanup of hidden properties support. r,a=brendan 2007-11-18 16:36:49 -08:00
igor@mir2.org
837c046912 Bug 398609: Backing out due to mochi test failure. 2007-11-13 07:47:28 -08:00