190 Commits

Author SHA1 Message Date
igor%mir2.org
fa7ad87fd7 Bug 309894: non-recursive XML-filtering implementation. r,a1.9=brendan
git-svn-id: svn://10.0.0.236/trunk@245608 18797224-902f-48f8-a5cc-f745e15eee43
2008-02-13 14:32:32 +00:00
igor%mir2.org
49571861af Bug 354135: protect against oo recursion in e4x. r,a=brendan, a1.9b3=mtschrep
git-svn-id: svn://10.0.0.236/trunk@244654 18797224-902f-48f8-a5cc-f745e15eee43
2008-02-01 06:01:17 +00:00
jwalden%mit.edu
e7bd30d30a Bug 409476 - js_ValueToBoolean is pure, remove cx and out parameters and just return a boolean value for better perf. r+a=brendan
git-svn-id: svn://10.0.0.236/trunk@243567 18797224-902f-48f8-a5cc-f745e15eee43
2008-01-20 00:56:09 +00:00
igor%mir2.org
fbcea9f305 Bug 411025: temp rooting implemenation cleanup, r,a=brendan
git-svn-id: svn://10.0.0.236/trunk@243566 18797224-902f-48f8-a5cc-f745e15eee43
2008-01-20 00:46:37 +00:00
igor%mir2.org
43a3a6bc41 Bug 413104: access to JSString is hidden behind macros even for a flat string.
git-svn-id: svn://10.0.0.236/trunk@243552 18797224-902f-48f8-a5cc-f745e15eee43
2008-01-19 21:15:08 +00:00
reed%reedloden.com
bfe255f250 Back out Igor's patch from bug 412340 due to consistent orange on fxdbug-win32-tb.
git-svn-id: svn://10.0.0.236/trunk@243533 18797224-902f-48f8-a5cc-f745e15eee43
2008-01-19 08:06:45 +00:00
igor%mir2.org
e9ec449017 Bug 412340: JString stores a flag to indicate that it was atomized. r=brendan a=blocking1.9+
git-svn-id: svn://10.0.0.236/trunk@243520 18797224-902f-48f8-a5cc-f745e15eee43
2008-01-19 02:56:51 +00:00
brendan%mozilla.org
efa68f7304 Fixes and improvements for property instrumentation (411630, r=igor).
* 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).


git-svn-id: svn://10.0.0.236/trunk@242973 18797224-902f-48f8-a5cc-f745e15eee43
2008-01-13 00:31:32 +00:00
brendan%mozilla.org
1227a2dcbb 64-bit fixes for problems reported by edwin@cheatah.nl (many thanks to Edwin; 410941, r=igor).
git-svn-id: svn://10.0.0.236/trunk@242552 18797224-902f-48f8-a5cc-f745e15eee43
2008-01-07 08:41:06 +00:00
brendan%mozilla.org
027d6bfc0f XML/XMLList need toSource love (410192, r=mrbkap).
git-svn-id: svn://10.0.0.236/trunk@242263 18797224-902f-48f8-a5cc-f745e15eee43
2008-01-02 20:25:59 +00:00
brendan%mozilla.org
874ad9d353 Don't fix typename bindings without JS2 opt-in (409252, r=mrbkap).
git-svn-id: svn://10.0.0.236/trunk@241869 18797224-902f-48f8-a5cc-f745e15eee43
2007-12-20 23:29:32 +00:00
brendan%mozilla.org
10759c8c4f JSCLASS_FIXED_BINDING only on Namespace, for better backward and forward compat (407323, r=jwalden).
git-svn-id: svn://10.0.0.236/trunk@240678 18797224-902f-48f8-a5cc-f745e15eee43
2007-12-09 06:14:26 +00:00
jwalden%mit.edu
680af8da29 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
git-svn-id: svn://10.0.0.236/trunk@240378 18797224-902f-48f8-a5cc-f745e15eee43
2007-12-04 03:05:24 +00:00
igor%mir2.org
f54fd20d96 Bug 404935: No compiler pseudo-frames when compiling functions. r,a=brendan
git-svn-id: svn://10.0.0.236/trunk@240106 18797224-902f-48f8-a5cc-f745e15eee43
2007-11-29 14:49:43 +00:00
igor%mir2.org
733a007291 Bug 399544: using custom storage for function argument and variable names. r,a=brendan
git-svn-id: svn://10.0.0.236/trunk@239971 18797224-902f-48f8-a5cc-f745e15eee43
2007-11-27 08:38:47 +00:00
igor%mir2.org
db5133bf70 Bug 398609: simpler handling of hidden properties, r,a=brendan
git-svn-id: svn://10.0.0.236/trunk@239660 18797224-902f-48f8-a5cc-f745e15eee43
2007-11-19 17:15:45 +00:00
igor%mir2.org
6c8e3eaa97 Bug 398609: backing out due to test failures.
git-svn-id: svn://10.0.0.236/trunk@239619 18797224-902f-48f8-a5cc-f745e15eee43
2007-11-19 00:58:46 +00:00
igor%mir2.org
778ffb85c1 Bug 398609: cleanup of hidden properties support. r,a=brendan
git-svn-id: svn://10.0.0.236/trunk@239618 18797224-902f-48f8-a5cc-f745e15eee43
2007-11-19 00:36:50 +00:00
igor%mir2.org
4bb91702f9 bug 397289: removing JSParseNode.pn_ts. r,a=brendan
git-svn-id: svn://10.0.0.236/trunk@239363 18797224-902f-48f8-a5cc-f745e15eee43
2007-11-13 22:18:17 +00:00
igor%mir2.org
0541de0428 Bug 398609: Backing out due to mochi test failure.
git-svn-id: svn://10.0.0.236/trunk@239325 18797224-902f-48f8-a5cc-f745e15eee43
2007-11-13 15:47:28 +00:00
igor%mir2.org
2e65d4ff36 Bug 398609: cleanup of hidden properties. r,a=brendan
git-svn-id: svn://10.0.0.236/trunk@239322 18797224-902f-48f8-a5cc-f745e15eee43
2007-11-13 14:56:18 +00:00
timeless%mozdev.org
6828cd3837 Bug 397239 ActionMonkey: Remove "extra" parameter to JS_FN
patch by Jason Orendorff <jorendorff@mozilla.com> r=igor a=brendan


git-svn-id: svn://10.0.0.236/trunk@237716 18797224-902f-48f8-a5cc-f745e15eee43
2007-10-13 20:09:48 +00:00
igor%mir2.org
1d235bcf1e Bug 397210: JSTokenStream is stored in JSParseContext. r=brendan
git-svn-id: svn://10.0.0.236/trunk@237113 18797224-902f-48f8-a5cc-f745e15eee43
2007-10-02 23:10:09 +00:00
igor%mir2.org
27b680de93 Backing out the patch 397210.
git-svn-id: svn://10.0.0.236/trunk@237017 18797224-902f-48f8-a5cc-f745e15eee43
2007-10-01 20:46:10 +00:00
igor%mir2.org
bab33931e0 Bug 397210: JSTokenStream is stored in JSParseContext. r=brendan
git-svn-id: svn://10.0.0.236/trunk@237014 18797224-902f-48f8-a5cc-f745e15eee43
2007-10-01 20:25:26 +00:00
igor%mir2.org
fed9f64bb2 Bug 391290: mutability flag for strings is stored inside strings. r=brendan
git-svn-id: svn://10.0.0.236/trunk@232204 18797224-902f-48f8-a5cc-f745e15eee43
2007-08-16 06:23:06 +00:00
igor%mir2.org
8c7384c4bc Bug 387481, bug 389063: multithreading atom fixes and cleanups. r=brendan
git-svn-id: svn://10.0.0.236/trunk@231579 18797224-902f-48f8-a5cc-f745e15eee43
2007-08-07 07:29:32 +00:00
brendan%mozilla.org
1625a24bdd Fast (frame-less) native call optimizations (385393, r=igor).
git-svn-id: svn://10.0.0.236/trunk@231255 18797224-902f-48f8-a5cc-f745e15eee43
2007-08-02 04:33:52 +00:00
igor%mir2.org
9bd77eaa76 Bug 389880: removal of redundant gcflags argument from string-allocation functions. r=brendan
git-svn-id: svn://10.0.0.236/trunk@231131 18797224-902f-48f8-a5cc-f745e15eee43
2007-07-28 16:57:30 +00:00
brendan%mozilla.org
7050bb0c78 Backing out, see bug 389122 and orange or red tinderboxes.
git-svn-id: svn://10.0.0.236/trunk@230578 18797224-902f-48f8-a5cc-f745e15eee43
2007-07-21 23:21:20 +00:00
brendan%mozilla.org
18ee45583c Fast natives and related optimizations (385393, r=igor).
git-svn-id: svn://10.0.0.236/trunk@230576 18797224-902f-48f8-a5cc-f745e15eee43
2007-07-21 21:39:42 +00:00
igor%mir2.org
0ec23405cf Bug 385729: objects and regexps are stored in separated tables in JSScript. r=brendan,mrbkap
git-svn-id: svn://10.0.0.236/trunk@229506 18797224-902f-48f8-a5cc-f745e15eee43
2007-07-08 09:03:37 +00:00
crowder%fiverocks.com
2e9c5abf21 Bug 357016: spidermonkey should be buildable by a C++ compiler, patch by
crowder/Jason Orendorff, r=brendan


git-svn-id: svn://10.0.0.236/trunk@229375 18797224-902f-48f8-a5cc-f745e15eee43
2007-07-05 20:37:48 +00:00
crowder%fiverocks.com
47a0bd86c4 Bug 384809 : Various JS engine crashes/leaks in OOM conditions, r=brendan, patch by Gavin Reaney, gavin@picsel.com
git-svn-id: svn://10.0.0.236/trunk@228294 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-19 04:10:03 +00:00
jwalden%mit.edu
11c1687607 Bug 369032 - "Assertion failure: kid2->parent == xml || !kid2->parent" with E4X after appendChild; avoid incorrectly reparenting XML by deeply copying instead of mutating. r=mrbkap
git-svn-id: svn://10.0.0.236/trunk@227616 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-06 22:06:16 +00:00
igor%mir2.org
1d94d8a9d6 Bug 378492: proper checks for null and jsval type when tracing, r=brendan
git-svn-id: svn://10.0.0.236/trunk@224972 18797224-902f-48f8-a5cc-f745e15eee43
2007-04-24 23:11:02 +00:00
igor%mir2.org
b5fa3e7ef5 Bug 377896: fixing compilation warning about return JS_FALSE in a function returning JSXML*. r=brendan
git-svn-id: svn://10.0.0.236/trunk@224716 18797224-902f-48f8-a5cc-f745e15eee43
2007-04-19 02:09:40 +00:00
igor%mir2.org
4bb4c414fe Bug 375270: API to trace GC things graph without running the GC. r=brendan
git-svn-id: svn://10.0.0.236/trunk@224614 18797224-902f-48f8-a5cc-f745e15eee43
2007-04-17 06:53:39 +00:00
igor%mir2.org
a581bee0ea Bug 373082: fixing bad English in comments for xml_lookupProperty.
git-svn-id: svn://10.0.0.236/trunk@224297 18797224-902f-48f8-a5cc-f745e15eee43
2007-04-07 15:19:23 +00:00
igor%mir2.org
803d68a1b1 Bug 374160: Uniform applications of GetXMLObject. r=brendan
git-svn-id: svn://10.0.0.236/trunk@222607 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-29 20:39:46 +00:00
igor%mir2.org
1d2ef0ee9d Bug 373082: Changine XML method lookup to never alter "this". r=brendan,jwalden
git-svn-id: svn://10.0.0.236/trunk@222394 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-26 09:07:24 +00:00
igor%mir2.org
4a846711ea Bug 374112: Ensure that empty ns gets empty prefix. r=brendan
git-svn-id: svn://10.0.0.236/trunk@222126 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-20 23:39:16 +00:00
brendan%mozilla.org
d45831b529 Fix non-existent attribute deref bug (374116, r=igor).
git-svn-id: svn://10.0.0.236/trunk@221949 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-15 23:06:22 +00:00
igor.bukanov%gmail.com
52e10dbf67 Bug 374106: making xml_contains to work again. r=mrbkap
git-svn-id: svn://10.0.0.236/trunk@221933 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-15 20:30:56 +00:00
igor.bukanov%gmail.com
1a31291827 Bug 371369: delete xml.function::name now works. r=brendan,jwalden
git-svn-id: svn://10.0.0.236/trunk@221690 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-10 11:14:22 +00:00
igor.bukanov%gmail.com
ee65483439 Bug 366725: JS_GetString(Bytes|Chars) are no longer used in SpiderMonkey.
git-svn-id: svn://10.0.0.236/trunk@221525 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-08 06:25:23 +00:00
igor.bukanov%gmail.com
1772d5c974 Bug 373072: consistently using JSXML_HAS_NAME(xml) instead of explicit xml class checks. r=brendan
git-svn-id: svn://10.0.0.236/trunk@221490 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-07 23:00:55 +00:00
igor.bukanov%gmail.com
0b76b0baf0 Bug 370016: with (non_xml_object) function::name now works. r=brendan
git-svn-id: svn://10.0.0.236/trunk@220786 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-23 01:06:49 +00:00
igor.bukanov%gmail.com
0a3731ace6 Bug 369740: function::name extension is now implemented through a generic xml code. r=brendan
git-svn-id: svn://10.0.0.236/trunk@220663 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-21 20:30:50 +00:00
igor.bukanov%gmail.com
49f1205716 Bug 370372: function::name assignments now work under with (xmllist). r=brendan,jwalden.
git-svn-id: svn://10.0.0.236/trunk@220628 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-21 09:42:14 +00:00