Commit Graph

516 Commits

Author SHA1 Message Date
Andreas Gal
8dd119a9f2 Browser spuriously sets runtime->anyArrayPrototypeHasElement and makes perf bad (481251, r=mrbkap). 2009-03-03 18:04:15 -08:00
Andreas Gal
d5b270c289 js_Array_dense_setelem can call arbitrary JS code (479487, r=jorendorff). 2009-02-26 11:59:07 -08:00
Igor Bukanov
6c264808b3 bug 477706 - fixing most VC 2005 warnings. r=gal,mrbkap 2009-02-26 09:49:39 +01:00
Andreas Gal
a3f5fc62ea Make arrays with less than 256 entries always dense (479386, r=brendan). 2009-02-25 14:48:07 -08:00
Jason Orendorff
c02372a2e6 Bug 477279 - Tune dense array growth. r=brendan. 2009-02-23 17:31:02 -06:00
Robert Sayre
3d5b72f17b Merge m-c to tracemonkey. 2009-02-23 12:44:23 -05:00
Blake Kaplan
2a8a8d8292 Fix bustage from checkin for bug Bug 479566 2009-02-21 14:25:43 -08:00
Jason Orendorff
27cd859ed3 Bug 479566 - Rename array "dense length" to capacity. r=shaver. 2009-02-21 15:33:50 -06:00
Jim Blandy
918bbe5eae Bug 391488: Eliminate PTRDIFF macro; delete jssttddef.h. r=jimb
Delete jsstddef.h, since its only remaining purpose is to make certain
Win16-specific definitions; we don't support Win16 any more.  In
particular, we can just subtract pointers now, so the PTRDIFF macro is
unnecessary noise.

Most places get stddef.h via jstypes.h or some other header, so we can
just delete #inclusions of jstddef.h.  The exception is jskwgen.h, so
there we explicitly include <stddef.h> instead.
2009-02-18 09:14:51 -08:00
Jason Orendorff
e7d8d9f448 Bug 477142 - _FAIL builtins need to be GC-safe. r=brendan. 2009-02-11 13:33:17 -06:00
Andreas Gal
0f246a8606 Substitute operation counting with a watchdog thread (477187, 3nd attempt, r=brendan/mrbkap/jst, sr=brendan/jst). 2009-02-10 14:07:01 -08:00
Andreas Gal
ae06fa6dd5 Backout bug 477187. 2009-02-10 09:54:14 -08:00
Andreas Gal
5af6756bd4 Substitute operation counting with a watchdog thread (477187, 2nd attempt, r=brendan/mrbkap/jst, sr=brendan/jst). 2009-02-10 03:45:36 -08:00
Andreas Gal
289e5bc286 Merge. 2009-02-09 22:54:41 -08:00
Andreas Gal
5a3630a33b Backing out bug 477187. Breaks xpcshell. 2009-02-09 22:54:05 -08:00
Andreas Gal
91947ce165 Merge. 2009-02-09 18:21:15 -08:00
Andreas Gal
9fc13761a1 Substitute operation counting with a watchdog thread (477187, r=brendan/mrbkap/jst, sr=brendan/jst). 2009-02-09 18:20:50 -08:00
Jeff Walden
a79289f56a Remove some trailing whitespace to maybe kick build machines out of an orange 2009-02-08 03:30:29 -08:00
Robert Sayre
ac4ac66cee Fix bustage from Bug 476873 2009-02-06 12:36:14 -08:00
Jason Orendorff
6ec7d2cd58 Bug 476873 - TM: Trace JSOP_ARRAYPUSH. r=brendan. 2009-02-06 13:19:06 -06:00
Graydon Hoare
620fdd2aab Bug 469625 - Deoptimize special own-properties, r=brendan. 2009-02-04 11:08:31 -08:00
Jason Orendorff
80ee6ad537 Bug 462027 - Bail off trace when reentering interpreter. r=gal. 2009-02-03 18:25:12 -06:00
Jason Orendorff
a4761a69ca Revert to 07be1f190a3d. Revision 5f5c1cd63641 should not have been pushed. 2009-02-03 12:38:44 -06:00
Jason Orendorff
c0f7e497a0 [mq]: bug-462027-v9 2009-02-02 20:42:46 -06:00
Jason Orendorff
5b0a24c8d7 Bug 476177 - TM: cx->stackPool must not be accessed on trace. r=brendan. 2009-01-30 17:40:05 -06:00
ebf182739e Backed out changeset 7246c4dcf997 (bug 469625) due to trace-test.js failures. 2009-01-28 22:26:46 -05:00
e0b7cfb83a Conservatively track modifications along the prototype chain of arrays (469625, r=jorendorff). 2009-01-28 16:16:20 -08:00
Blake Kaplan
636902bdca Bug 467499 - Pass the proper size argument to ResizeSlots. r=shaver/crowder 2009-01-26 16:20:05 -08:00
Jeff Walden
08627b2305 Bug 465980 - Some array methods don't work right on ginormous arrays. r=brendan 2009-01-12 13:07:48 -08:00
Brendan Eich
162c7c43b6 Back out patch for bug 469625, it mysterious busts stuff. 2008-12-19 01:32:48 -08:00
Brendan Eich
9ec795bb52 Bug 469625 - TM: Crash [@ js_String_getelem] (r=jorendorff). 2008-12-18 22:35:46 -08:00
Jason Orendorff
aaadf0c55c Bug 460865 - Read barrier for cx->fp. r=mrbkap, r=dmandelin. 2008-12-09 10:38:32 -06:00
Jason Orendorff
bf7131cc70 Bug 462459 - TM: Better tracer support for |new Array(...)|. r=gal. 2008-11-05 07:29:38 -06:00
Brendan Eich
1a344ffefb Bug 456511 - (imacros) TM: Make conversion work on arbitrary JSObjects (r=gal). 2008-11-13 00:30:20 -08:00
Andreas Gal
fd9de39309 Backed out changeset a40f2117bcc0 2008-11-12 17:39:48 -08:00
Brendan
7b8d11c0f0 Add imacros to support conversion of arbitrary JSObjects (456511, r=gal). 2008-11-12 16:55:45 -08:00
Jason Orendorff
453aca28d5 Bug 460157 - Yet more macros for defining builtins. r=brendan 2008-10-21 17:58:06 -05:00
Jason Orendorff
3584746574 Bug 459266 - TM: Allow CALLINFO macros to specify linkage. r=brendan. 2008-10-16 14:24:10 -05:00
Jason Orendorff
fccf374129 Bug 458735 - Improve internal API for traceable natives (r=brendan, nanojit r=edwsmith) 2008-10-08 17:08:33 -05:00
Brendan Eich
24a9ca408b Bug 457920 - regexp-dna.js and generality want JSOP_GETELEM(dense array, "0") (r=mrbkap/gal). 2008-10-06 22:30:36 -07:00
Jason Orendorff
02cbda9371 Bug 389034 - JS_SetProperty() ends up resolving w/o JSRESOLVE_ASSIGNING (r=brendan, sr=bzbarsky) 2008-09-25 11:13:31 -05:00
Andreas Gal
8f79e9894f Expose push pop in jsarray and add builtins (453734, r=mrbkap). 2008-09-16 17:07:59 -07:00
Andreas Gal
c491382ad6 Trace slow array get/set of indexed props (453261, r=brendan). 2008-09-15 00:54:28 -07:00
Blake Kaplan
6216a5f211 Work around incorrect but annoying strict-aliasing warning. r=brendan 2008-09-10 00:36:01 -07:00
Brendan Eich
a5c7e9132c Avoid needless prototype-shape purges (454035, r=igor). 2008-09-09 11:24:03 -07:00
Taras Glek
ea9b92b1ba bug 453889: Correct prbool misuse in spidermonkey 2008-09-08 13:41:09 -07:00
Taras Glek
c7528a9f01 bug 432917: Replace "must flow through label" comments with statically-checkable macro. r=igor 2008-09-08 10:51:10 -07:00
Jim Blandy
d8cc274426 Bug 97954: Give jsconfig.h a better name, and make room for the new js-config.h. r=bsmedberg
We'd like the SpiderMonkey configure script to generate a header file
named js-config.h to hold #definitions chosen at configure time that
affect the SpiderMonkey API, like JS_THREADSAFE.  However, that name
is very similar to that of an existing header file, jsconfig.h.  This
patch renames the existing header file, and updates all references to
it.
2008-09-05 10:19:17 -07:00
Brendan Eich
9f541e1e76 Kind of an Array initialiser tour-de-force for bug 452878:
1. Split FastNewArray from FastNewObject built-in for greater speed/specialization and further splitting into Array_1str, etc.
2. Add Array_1str, Array_2obj, and Array_3num builtins for benchmarked new Array(...) constructions.
3. Export ARRAY_SET_DENSE_LENGTH and ARRAY_GROWBY via jsarray.h to jstracer.cpp.
4. Tweaked SetArrayElement to make common/best case code be the predicted/prefetched path.
5. js_MakeArraySlow now preserves the pre-slow length in JSSLOT_ARRAY_COUTN as a jsval-tagged int if possible -- this will help the tracer avoid aborting on dense arrays that turned slow but not sparse by addition of a named property.
6. Export js_fun_apply and js_Object from their respective .cpp files, in these cases just to jstracer.cpp via local prototypes (no .h files involved).
7. More INS_CONSTPTR and INS_CONST macrology for better names in trace debug spew.
8. Fix TraceRecorder::test_property_cache to avoid aborting on JSOP_SETNAME that creates a new global, by setting it to undefined so it can be lazily imported. This helps 3d-raytrace.js, which has an unintended global loop control variable in a function.
9. JSTraceableNative loses its premature-deadwood tclasp member (my bad).
10. TraceRecorder::record_JSOP_NEW() handles 'new Object' now along with the 'new Array' variations. I also cut down the copy-paste code from JSOP_CALL's record method to mostly what is needed now.
11. Add KNOWN_NATIVE_DECL macro for concise prototype of library-private js_* native functions, and alphabetized the lists (too long for any other order to be winning).
12. Big honking special case for foo.apply(obj, [str]), which we can generalize as needed. Helps string-tagcloud.js. What's cool is how tracing allows us to rewrite this to foo(str) with this set to obj, eliminating the Function.prototype.apply. This requires some rewriting in JSOP_ENDINIT's record method.
2008-09-01 01:24:58 -07:00
Blake Kaplan
57b757674a Bug 451483 - Array.splice() should return an empty array. r=brendan 2008-08-25 17:12:30 -07:00