Commit Graph

883 Commits

Author SHA1 Message Date
Andreas Gal
706120c0fb Backed out changeset 972c44aa9d1f (bug 452598). 2009-04-04 10:14:52 -07:00
Brendan Eich
5f4d9ff474 upvar2, aka the big one (452598, r=mrbkap). 2009-04-04 10:05:49 +01:00
Igor Bukanov
4df05a423c bug 484861 - removal of unsed fields from JSObjectOps. r=mrbkap 2009-04-01 14:32:51 +02:00
Graydon Hoare
3e481f618d Bug 484751 - Followup patch to fix crash in initial checkin, r=mrbkap. 2009-03-31 19:34:32 -07:00
Jeff Walden
3e189b0822 Bug 484751 - TM: "Assertion failure: !OBJ_GET_CLASS(cx, proto)->getObjectOps, at ../jsobj.cpp". r=mrbkap 2009-03-31 14:24:01 -07:00
Robert Sayre
d3ae3d827d Merge mozilla-central to tracemonkey. 2009-03-29 10:42:32 -07:00
Jeff Walden
69543b2f1f Make js_DumpValue more useful with function jsvals. r=mrbkap 2009-03-26 16:07:54 -07:00
Robert Sayre
150b7d8a28 Merge tracemonkey to mozilla-central. 2009-03-24 13:49:05 -04:00
Ben Turner
b554980985 Fix for windows build bustage 2009-03-19 17:19:19 -07:00
Robert Sayre
116429311e revert to changeset b59984b88601 2009-03-20 00:23:44 -04:00
Robert Sayre
f7b741972b Merge tracemonkey to mozilla-central. 2009-03-20 00:04:47 -04:00
Ben Turner
364e0e0d6a Fix for windows build bustage 2009-03-19 17:19:19 -07:00
Andreas Gal
315a5d0bcb Read barrier for global object properties (463153, r=brendan). 2009-03-17 10:39:51 -07:00
Jason Orendorff
befcabe89e Bug 481444 - TM: objectHook is called on trace, via js_NewObject [@ LeaveTree] or [@ js_SynthesizeFrame]. r=gal.
Thanks Daniel!
2009-03-12 08:34:57 -05:00
Igor Bukanov
20e6be9c80 bug 362910 - js_GetMethod cleanup. r=brendan 2009-03-14 17:41:47 +01:00
Jim Blandy
249eed4eb3 Back out fix for 481444; orange on Linux TraceMonkey unit test: http://tinderbox.mozilla.org/showlog.cgi?log=TraceMonkey/1236978913.1236990062.26824.gz&fulltext=1 2009-03-13 18:07:25 -07:00
Jason Orendorff
f7ad0e9e06 Bug 481444 - TM: objectHook is called on trace, via js_NewObject [@ LeaveTree] or [@ js_SynthesizeFrame]. r=gal.
Thanks Daniel!
2009-03-12 08:34:57 -05:00
Jim Blandy
875aee5e88 Bug 479258: Include "jsstdint.h" for <stdint.h> type use within SpiderMonkey. r=brendan 2009-03-18 11:38:16 -07:00
Jason Orendorff
dbb0b6a149 Bug 481218 - js_IsCallable returns false for functions. r=brendan.
--HG--
extra : rebase_source : 52d3cba36f3fa1301223cb579bd75ec7bbd5d130
2009-03-11 10:46:45 -05:00
Robert Sayre
a408d9bbad Merge m-c to tm. 2009-03-10 16:49:12 -04:00
Igor Bukanov
09d80afc72 bug 355829 - treating null as a primitive value in js_ValueToObject. r=brendan 2009-03-10 13:52:10 +01:00
Brendan Eich
e37fd1b818 Bug 476447 - Array.prototype getter/setter does not work as usual (r=jorendorff). 2009-03-09 11:25:43 -07:00
David Mandelin
a148ea64cd Add missing GC_POKE to js_SetRequiredSlot (481922, r=igor). 2009-03-07 01:32:22 -08:00
Brendan Eich
0332084955 Bug 481516 - Assertion failure: pobj_ == obj2, at ../jsinterp.cpp:4276 when getting a property that is cached but shadowed (r=jorendorff). 2009-03-06 16:34:19 -08:00
Brendan Eich
53c9096f08 Bug 480759 - TM: trace RegExp constructors (r=gal). 2009-03-04 19:26:16 -08:00
Robert Sayre
8f71e6c715 Merge m-c to tm 2009-03-04 14:52:53 -05:00
Brendan Eich
a57f1ef4a2 Keep --disable-jit working (480657, r=gal). 2009-03-04 00:38:46 -08:00
Brendan Eich
f32c3d8613 Bug 480657 - TM: Add an API to define traceable constructors (r=gal, jorendorff). 2009-03-03 22:53:27 -08:00
Andreas Gal
8c3223aab5 Browser spuriously sets runtime->anyArrayPrototypeHasElement and makes perf bad (481251, r=mrbkap). 2009-03-03 18:04:15 -08:00
Robert Sayre
f4c8ebe128 Merge tm to m-c. 2009-03-03 13:48:15 -05:00
Jason Orendorff
ffaa49afc4 Bug 480856 - PurgeScopeChain should deep-bail. r=brendan.
--HG--
extra : rebase_source : b9c10596268b9421f66d9636342b7edf4419055e
2009-03-02 14:01:30 -06:00
Andreas Gal
4c04aa2f53 Backed out bug 480657. Massive failures across all platforms. 2009-02-28 23:40:04 -08:00
Andreas Gal
ee820bda7a Style nit (no bug, no code change). 2009-02-28 18:40:59 -08:00
Andreas Gal
7bd6cbad5f Add an API to define traceable constructors (480657, r=brendan). 2009-02-28 18:18:42 -08:00
Robert Sayre
990a187dc6 Merge tracemonkey to mozilla-central. 2009-03-09 14:45:46 -04:00
Blake Kaplan
e3650307b7 Bug 478910 - Unwrap |obj| because you can't use a wrapper as a variables object. r=brendan 2009-03-04 16:27:50 -08:00
Igor Bukanov
896a95119f bug 477706 - fixing most VC 2005 warnings. r=gal,mrbkap 2009-02-26 09:49:39 +01:00
Jason Orendorff
3a3700435e Bug 480126 - jsstack.js static analysis errors in js_GetCurrentBytecodePC and specializeTreesToMissingGlobals. r=bsmedberg. 2009-02-25 11:42:39 -06:00
Jason Orendorff
2f464f3348 Bug 479826 - Remove cx->pcHint. r=gal.
--HG--
extra : rebase_source : caf9fef929fe161fad2f6a98b53cb3d00e43f31f
2009-02-23 17:29:40 -06:00
Robert Sayre
12943580cf Merge m-c to tracemonkey. 2009-02-23 12:44:23 -05:00
Jason Orendorff
15b9f03458 Bug 479566 - Rename array "dense length" to capacity. r=shaver. 2009-02-21 15:33:50 -06:00
Jason Orendorff
bf8b9e17e4 Bug 479353 - Crash [@ Detecting] or "Assertion failure: (uint32)(index_) < atoms_->length, at ../jsobj.cpp". r=igor. 2009-02-20 18:22:51 -06:00
Igor Bukanov
7ac32de806 bug 478543 - fixing warnings about casts between function and data pointers. r=brendan 2009-02-19 09:33:37 +01:00
Jim Blandy
2d6ea8b787 Bug 478075: Remove parent argument to js_GetCallObject. r=brendan 2009-02-18 23:57:24 -08:00
Jason Orendorff
c936fbe2d4 Bug 463239 - JS_SetTrap alters code execution. r=brendan. 2009-02-18 18:31:09 -06:00
Jason Orendorff
4dbb549ebc Bug 477143 - jsstack.js static analysis error in js_GetPropertyHelper. r=mrbkap. 2009-02-18 13:14:41 -06:00
Robert Sayre
695b4646c3 Merge tm to mc 2009-02-19 11:48:08 -05:00
Jim Blandy
ede7e6d142 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
Blake Kaplan
42b1e63a5b Bug 478047 - Assignments to a property that has a getter but not a setter should throw a TypeError. r=igor 2009-02-11 19:48:00 -08:00
Jason Orendorff
c9b0918474 Bug 477142 - _FAIL builtins need to be GC-safe. r=brendan.
--HG--
extra : rebase_source : 10515f7d1f5a85c1965c812f55d91d3d0f49a28e
2009-02-11 13:33:17 -06:00
Andreas Gal
93eb39269d 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
474d0d308f Backout bug 477187. 2009-02-10 09:54:14 -08:00
Andreas Gal
f796bcd60a 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
2a20c2a6de Backing out bug 477187. Breaks xpcshell. 2009-02-09 22:54:05 -08:00
Andreas Gal
cbfbbd3cac 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
ece84ef199 Bug 474501 - JS array and object literals should define properties, not set them, to avoid calling getters or setters along the prototype chain. r=brendan 2009-02-03 23:14:36 -08:00
Jeff Walden
3c038a63cb Bug 463243 - Assert correct type in JSVAL_TO_* (and vice versa) macros to fail fast when type errors happen. r=brendan 2009-02-03 13:56:25 -08:00
Graydon Hoare
d1049135f4 Bug 469625 - Deoptimize special own-properties, r=brendan. 2009-02-04 11:08:31 -08:00
Andreas Gal
359fa8c1b5 Backout bug 474501. Causes a massive slowdown in trace-tests.js that needs to be investigated. 2009-02-04 01:47:44 -08:00
Jeff Walden
6a3bcef361 Bug 474501 - JS array and object literals should define properties, not set them, to avoid calling getters or setters along the prototype chain. r=brendan 2009-02-03 23:14:36 -08:00
Andreas Gal
3d1dd7285b Object_p_hasOwnProperty and Object_p_propertyIsEnumerable should be BOOL_FAIL, not BOOL_RETRY (476760, r=brendan). 2009-02-03 18:49:43 -08:00
Jason Orendorff
e4c1fb1cfd Bug 462027 - Bail off trace when reentering interpreter. r=gal. 2009-02-03 18:25:12 -06:00
Jeff Walden
461e28ae88 Backed out changeset ca733f2cc237; looks like some include system weirdness is biting where an old version of jsapi.h is being included which then causes a *newer* included version to miscompile. Weird, still investigating... 2009-02-03 15:48:30 -08:00
Jeff Walden
e356cf1d3a Bug 463243 - Assert correct type in JSVAL_TO_* (and vice versa) macros to fail fast when type errors happen. r=brendan 2009-02-03 13:56:25 -08:00
Jason Orendorff
27c16ff3b1 Bug 476666 - TM: Crash reading near 0 @Detecting, regression due to bug 476238. r=gal. 2009-02-03 12:39:46 -06:00
Jason Orendorff
4e3f2cfd40 Revert to 07be1f190a3d. Revision 5f5c1cd63641 should not have been pushed. 2009-02-03 12:38:44 -06:00
Jason Orendorff
f8ca22b197 Bug 476666 - TM: Crash reading near 0 @Detecting, regression due to bug 476238. r=gal. 2009-02-03 12:19:50 -06:00
Jason Orendorff
f6ffd1d380 [mq]: bug-462027-v9 2009-02-02 20:42:46 -06:00
Andreas Gal
68e8901a4a Bake the value of fp->imacpc into the trace and report it at recording time when detecting inside JSOP_GETELEM (follow-up for 476238, r=brendan,jorendorff). 2009-02-02 18:21:28 -08:00
Andreas Gal
3682914dfd Leave a hint for GetProperty in the context so it can figure out the current bytecode location without de-optimizing (476238, r=jorendorff). 2009-02-02 17:25:59 -08:00
Robert Sayre
5bdafd3aba Merge tm to m-c. 2009-02-28 12:38:33 -05:00
Blake Kaplan
14658eb0ed Bug 479288 - Move wrapping back into the outerObject hook. r+sr=bent/jst 2009-02-25 17:32:09 -08:00
Jason Orendorff
83d8c84902 Bug 480126 - jsstack.js static analysis errors in js_GetCurrentBytecodePC and specializeTreesToMissingGlobals. r=bsmedberg. 2009-02-25 11:42:39 -06:00
Jeff Walden
543f0d5a97 Back out bug 474501; it has a problem with one Mochitest. 2009-01-30 20:00:52 -08:00
Jeff Walden
3fcb6ac3ea Bustage fix, not updated for changes in c0b2c82a524e 2009-01-30 17:59:12 -08:00
Jeff Walden
e961f82d89 Bug 474501 - JSON literals shouldn't have prototype setters run during evaluation. r=brendan 2009-01-30 17:40:33 -08:00
Jason Orendorff
37f2985bdf Bug 476177 - TM: cx->stackPool must not be accessed on trace. r=brendan.
--HG--
extra : rebase_source : 746d61b54aa38cbe18fe31bce4efcbbad4629678
2009-01-30 17:40:05 -06:00
shaver@mozilla.org
728f9f9126 Backed out changeset 7246c4dcf997 (bug 469625) due to trace-test.js failures. 2009-01-28 22:26:46 -05:00
brendan@mozilla.org
14dd060156 Conservatively track modifications along the prototype chain of arrays (469625, r=jorendorff). 2009-01-28 16:16:20 -08:00
Andreas Gal
3aa2396acf Merge. 2009-01-27 16:42:29 -08:00
Andreas Gal
1bbc35daad Backed out changeset d50d3681b94e (attempted re-landing of 474771). 2009-01-27 16:41:43 -08:00
Brendan Eich
60770fa5b5 Bug 454184 - Implement eval caching (r=mrbkap). 2009-01-27 16:40:40 -08:00
Brendan Eich
914f4ef313 Back out due to Mac Tp orange (454184). 2009-01-27 15:52:10 -08:00
Brendan Eich
335791e844 Bug 454184 - Implement eval caching (r=mrbkap). 2009-01-27 13:53:31 -08:00
Igor Bukanov
65cda4b280 Backed out changeset 39b1c9f21064 - the patch again has triggered the crashtest timeout. 2009-01-27 15:11:47 +01:00
Andreas Gal
f17d7cf056 Set on-trace flag only during trace execution, not recording (474771, r=brendan, patch has failed before, please back out at the earliest sign of trouble). 2009-01-27 01:55:31 -08:00
Robert Sayre
cd3999104d Merge m-c to tm. 2009-01-26 13:54:59 -08:00
Robert Sayre
b5cd4ca3dc Backout c0b2c82a524e. 2009-01-25 22:36:46 -08:00
Andreas Gal
e481ee3eb8 Only set onTrace flag while running native code, not when recording (474771, r=brendan). 2009-01-25 20:24:25 -08:00
Andrew Paprocki
a4ec9c19ad Bug 471716 - jsobj.cpp DEBUG / js_DumpObject crash on JSFunction with null proto. r=jorendorff 2009-01-23 17:20:14 -08:00
Andreas Gal
1d277bc633 Backout all patches since last mozilla-central merge (Thu Jan 22 19:14:02 2009 -500 by sayrer). 2009-01-25 02:58:22 -08:00
Andreas Gal
b94ebfcf08 Merge. 2009-01-23 20:22:41 -08:00
Andreas Gal
1baff988de Only set onTrace flag while running native code, not when recording (474771, r=brendan). 2009-01-23 20:22:23 -08:00
Andrew Paprocki
ad291a3ff2 Bug 471716 - jsobj.cpp DEBUG / js_DumpObject crash on JSFunction with null proto. r=jorendorff 2009-01-23 17:20:14 -08:00
Jim Blandy
dbedefb398 Bug 454704: Protect sharpObjectMap in the presence of wrapped getters. r=igor 2009-01-16 09:59:46 -08:00
Andreas Gal
4017bf1be3 str_match should use js_GetCurrentBytecodePC (484308, r=mrbkap). 2009-03-20 17:07:30 -07:00
Blake Kaplan
2ddd004009 Bug 462428 - Make __lookup[GS]etter__ work on quickstubbed properties by faking it for XPConnect prototype objects only. r=jorendorff sr=brendan 2009-01-23 15:44:01 -08:00
David Mandelin
4202e18d74 Bug 463997: JS regression test bug with 'with (window) ...', r=mrbkap 2009-01-02 13:11:46 -08:00
Robert Sayre
c36cc631e9 Ho ho ho, it's a lump of hg coal. Merge.
--HG--
rename : js/src/js.cpp => js/src/shell/js.cpp
2008-12-25 20:19:52 -05:00
Brendan Eich
608700e168 Back out patch for bug 469625, it mysterious busts stuff. 2008-12-19 01:32:48 -08:00
Brendan Eich
16350be804 Merge, dammit! 2008-12-18 22:40:58 -08:00
Brendan Eich
b9cf426072 Bug 469625 - TM: Crash [@ js_String_getelem] (r=jorendorff). 2008-12-18 22:35:46 -08:00
Brendan Eich
56658da21f Bug 465460 - TM: valueOf ignored on third iteration of loop (r=gal). 2008-12-16 19:03:42 -08:00
Blake Kaplan
3f3f4048f8 Bug 469621 - Protect the new scope object from garbage collection. r=crowder 2008-12-15 16:42:40 -08:00
Brian Crowder ext:(.)
f3d3814803 Bug 446026 - restore utility of eval(s, o). r=mrbkap 2008-12-12 23:47:23 -08:00
Robert Sayre
443f738d12 Backed out changeset f682453c06d0. Failing scriptaculous unit tests, doesn't build on windows or mac ppc. 2008-12-11 20:43:32 -08:00
Brendan Eich
ece10ee8df Bug 465460 - TM: valueOf ignored on third iteration of loop (r=gal). 2008-12-11 17:50:56 -08:00
Benjamin Smedberg
e8ea9cf02d Merge mozilla-central into tracemonkey, specifically to pick up bug 467579. 2008-12-09 21:37:35 -05:00
Blake Kaplan
bab2bf9e49 Bug 468581 - Use a better function to compute principals. r=brendan
--HG--
extra : rebase_source : 137705045b8b528c49405a52f91455306ecf9857
2008-12-19 15:47:20 -08:00
Brendan Eich
db295b5972 Back out patch for bug 469625, it mysteriously busts stuff. 2008-12-19 01:38:09 -08:00
Brendan Eich
1c1214a195 Bug 449657 - JS_SealObject fails on Array objects (r=mrbkap, a=sayrer). 2008-12-07 00:03:12 -08:00
Blake Kaplan
128130b215 Bug 456284 - JSExtendedClass requires an equality hook. r=crowder, a191=beltzner. 2008-11-28 11:06:30 +01:00
Igor Bukanov
54b6b33d7d bug 461158, r=brendan a191=blocker 2008-11-26 20:59:47 -05:00
Brendan Eich
cb47c4cf08 Bug 456511 - (imacros) TM: Make conversion work on arbitrary JSObjects (r=gal). 2008-11-13 00:30:20 -08:00
Andreas Gal
074d900a57 Backed out changeset a40f2117bcc0 2008-11-12 17:39:48 -08:00
Brendan
0ca607d76b Add imacros to support conversion of arbitrary JSObjects (456511, r=gal). 2008-11-12 16:55:45 -08:00
Andreas Gal
2e3beeb970 Resolve atom/str naming conflicts in the source for narcissus, make narcissus extensions compile again (462436, r=brendan). 2008-10-30 15:38:10 -07:00
Brendan Eich
bad1b50498 Re-land patch for bug 458851 now that latent bug it uncovered (not filed; see hg log) is fixed. 2008-10-28 14:04:29 -07:00
Jason Orendorff
37724bb378 Backed out changeset d4fe79372140 (bug 458851) due to persistent orange on TraceMonkey tinderboxes. 2008-10-28 10:49:06 -07:00
Brendan Eich
51f987553a Bug 458851 - TM: for-in loops skip every other value in certain cases (r=gal/mrbkap). 2008-10-27 22:30:52 -07:00
Brendan Eich
fcca844194 Bug 461248 - Remove JSOP_RESUME (r=gal/jorendorff). 2008-10-24 12:34:08 -07:00
Jason Orendorff
90796fca26 Bug 461492 - TM: INT32 can't be used as return type for traceable native that actually returns an int. r=gal. 2008-10-24 12:49:54 -05:00
Jason Orendorff
b7fb9bc849 Bug 460865 - Read barrier for cx->fp. r=mrbkap, r=dmandelin.
--HG--
extra : rebase_source : 19963188b2f9f96336ce6ca28dbaefccf3a639b7
2008-12-09 10:38:32 -06:00
Jason Orendorff
68a5dcca96 Bug 460157 - Yet more macros for defining builtins. r=brendan 2008-10-21 17:58:06 -05:00
Jason Orendorff
e1877796ba Bug 460501 - Round-trip change due to "&&" constant-folding leaving extra parens. r=brendan. 2008-10-21 13:35:22 -05:00
Jason Orendorff
121e528b9f Bug 460117 - TM: Inconsistent results from hasOwnProperty with JIT enabled. r=brendan. 2008-10-21 13:19:22 -05:00
Robert Sayre
685eced553 Merge m-c to tracemonkey. 2008-12-06 00:54:08 -08:00
Jeff Walden
5536e7f722 Bug 465476 - SpiderMonkey confusion over "-0" and "0" properties of an object. r=brendan 2008-11-21 11:47:35 -08:00
Jason Orendorff
e0b7bce037 Bug 459266 - TM: Allow CALLINFO macros to specify linkage. r=brendan. 2008-10-16 14:24:10 -05:00
Blake Kaplan
54cdbe81ec Merge mozilla-central -> tracemonkey 2008-10-13 11:05:05 -07:00
Jason Orendorff
c4b5d25289 Bug 458098 - js_DumpObject can't handle objects that share proto's scope (r=crowder) 2008-10-09 07:30:21 -05:00
Jason Orendorff
a27d101dab Bug 458735 - Improve internal API for traceable natives (r=brendan, nanojit r=edwsmith) 2008-10-08 17:08:33 -05:00
Brendan Eich
19e9638dc3 Bug 457920 - regexp-dna.js and generality want JSOP_GETELEM(dense array, "0") (r=mrbkap/gal). 2008-10-06 22:30:36 -07:00
Andreas Gal
83ea7eb834 Merge. 2008-09-30 16:35:52 -07:00
Andreas Gal
320dd48955 Add a resume point (JSOP_RESUME) immediately following JSOP_CALL (457789, r=mrbkap). 2008-09-29 18:49:40 -07:00
Jason Orendorff
b6158434af Bug 456469 - Dead variable pval in js_NativeSet (r=brendan) 2008-09-25 11:29:12 -05:00
Jason Orendorff
e63d2c737c Bug 455953 - js_DumpObject debugging function (r=crowder) 2008-09-25 11:29:12 -05:00
Jason Orendorff
c35bfc3682 Bug 389034 - JS_SetProperty() ends up resolving w/o JSRESOLVE_ASSIGNING (r=brendan, sr=bzbarsky) 2008-09-25 11:13:31 -05:00
Brendan Eich
94b10f6170 Avoid needless prototype-shape purges (454035, r=igor). 2008-09-09 11:24:03 -07:00
Taras Glek
71b568fe41 bug 453889: Correct prbool misuse in spidermonkey 2008-09-08 13:41:09 -07:00
Taras Glek
dbf23956a4 bug 432917: Replace "must flow through label" comments with statically-checkable macro. r=igor 2008-09-08 10:51:10 -07:00
Igor Bukanov
23c5063560 bug 446386 - eliminating compiler pseudo-frames. r=brendan 2008-09-08 11:47:12 +02:00
Arpad Borsos
9b6f558fee Bug 398946 - Remove JS_STATIC_DLL_CALLBACK and JS_DLL_CALLBACK from the tree; r=(benjamin + bent.mozilla) 2008-09-07 00:21:43 +02:00
Ben Turner
1e5c70827f Bug 451729 - " Allow runtime's security callbacks to be overridden by a context". r=brendan. 2008-09-05 16:24:53 -07:00
Jim Blandy
90bf6a2d1e 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.

--HG--
rename : js/src/jsconfig.h => js/src/jsversion.h
2008-09-05 10:19:17 -07:00
Jason Orendorff
4dda6aa8e5 Bug 453383 - Confusing comment, bogus indentation in jsobj.cpp (r=mrbkap) 2008-09-03 15:30:13 -05:00
Brendan Eich
5a8cb06838 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
Brendan Eich
18d5749230 Fix upvar decompilation for eval-from-fun case (452441, r=igor). 2008-08-29 00:24:11 -07:00
Blake Kaplan
977123733e Bug 452338 - Abort on the weird case where we find a global name on the prototype of the scope chain. r=brendan 2008-08-28 16:37:03 -07:00
Blake Kaplan
0a3ec02bb5 Bug 452295 - Deal with embeddings that don't use principals. r=brendan 2008-08-27 13:56:34 -07:00
Brendan Eich
d62ee36613 Fix script->owner maintenance; also fix warning. 2008-08-21 05:04:20 -07:00
Brendan Eich
9cd8e5a539 Upvar, v0.1 (limited to looking up from eval in a function, to the function's args and vars). 2008-08-21 03:47:33 -07:00
Brendan Eich
4a25cf5a32 Defer eval'ed script destruction to next GC; expose js_obj_eval for tracing. 2008-08-20 22:18:42 -07:00
Andreas Gal
f3972bfb84 Backed out changeset be63a51a0a3b. Breaks tofte if run from ./time.sh. 2008-08-20 14:57:49 -07:00
Brendan Eich
6bc330ef33 Don't disable property caching in eval (this requires GC'ing eval scripts). Do tolerate active Call object at head of scope chain in record_JSOP_CALLNAME, and go straight to the stack slots. 2008-08-20 14:04:37 -07:00
shaver@mozilla.org
5d3ad68bbe merge from mozilla-central 2008-08-20 08:17:17 -07:00
Brendan Eich
d004346b52 Object.prototype.{hasOwnProperty,propertyIsEnumerable}. 2008-08-11 17:47:05 -07:00
Brendan Eich
56fac8fe90 Back out extra gcflag param change (859b9a23adbf), I set bad precedent and will back out previous such shortly. Want cx->gcflags instead. 2008-08-11 10:33:23 -07:00
shaver@mozilla.org
ee67ea9db4 extend js_NewObjectWithGivenProto to permit specifying additional new-thing flags (such as GCX_DONT_BLOCK) 2008-08-10 22:56:10 -04:00
Brendan Eich
eaf4254c15 Merge from mozilla-central. 2008-08-08 18:58:04 -07:00
Igor Bukanov
b16852c1cd bug 412296 - removal of minarg support for fast native 2008-08-08 18:02:50 +02:00
Blake Kaplan
40e2a77e0b Bug 449152 - js_CheckAccess should init out params on failure, r=brendan 2008-08-05 14:49:50 -07:00
Igor Bukanov
0818d2b656 bug 417131 - caching enumerators to speedup for-in loops. r=brendan 2008-08-19 13:00:14 -04:00
Blake Kaplan
d8801925e5 Implement ES3.1's Object.getPrototypeOf. bug 444787, r=brendan 2008-08-04 16:43:12 -07:00
Brendan Eich
fe3a6127c5 - Export JSSLOT_ITER_* from jsiter.cpp to jsiter.h, for jstracer.cpp to use.
- Fix OBJ_GET_SLOT to be STOBJ_GET_SLOT in jsiter.cpp, no thread safety here (bug on file).
- Move JSNativeEnumerator from jsobj.cpp to jsobj.h for jstracer.cpp as well.
- Rename JOF_2BYTE JOF_UINT8 for consistency, and actually decompile it.
- Trace JSOP_FORVAR (can't do anything in JSOP_ITER, it comes before the loop).
- Shortened some guardMyLongSummerVacationWithinBounds names ;-).
- Removed/refactored to avoid dslots_ins obligation on all callers.
2008-07-30 16:32:33 -07:00
Johnny Stenback
499796e945 Landing fix for bug 442708. JS_GC with GC_SET_SLOT_REQUEST doesn't loop until all threads are satisfied. Patch by brendan@mozilla.org, r=bent.mozilla@gmail.com 2008-07-21 16:58:24 -07:00
Igor Bukanov
fc68712767 bug 441686 - eliminating JSStackFrame.(nvars|vars). r=brendan 2008-07-20 22:13:17 +02:00
Igor Bukanov
d3223d86a3 [Bug 446229] Fixing GCC conversion warnings within SpiderMonkey. r=brendan 2008-07-20 14:53:21 +02:00
Igor Bukanov
e1c0b7d628 Bug 443746 – Optimizing the enumeration state allocation. r=brendan 2008-07-06 21:02:44 +02:00
Brendan Eich
d0966c0fc0 Clean up for-in ops and naming nit (443039, r=igor). 2008-07-01 18:59:18 -07:00
Brian Crowder
ab14b03b55 Bug 442333 - remove eval's optional second argument, r=brendan 2008-07-01 16:44:44 -07:00
bcrowder@mozilla.com
9736e0887f Bug 435345 - Cannot accurately watch the 'length' property of arrays, r=shaver 2008-07-01 12:47:09 -07:00
Igor Bukanov
8012684984 [Bug 411575] SM: faster js_PutCallObject, r=brendan 2008-06-30 19:17:33 +02:00
Blake Kaplan
0f0ecd539e Do not attempt to lock a non-native object. bug 436741, r=brendan 2008-06-25 12:23:35 +02:00
Igor Bukanov
d24b2f9846 [Bug 432881] SM: JSVAL_VOID as a pseudo-boolean. r=brendan 2008-06-25 11:43:02 +02:00
Igor Bukanov
c6b43c7494 [Bug 433382] More efficient interpreter switch when computed goto is not available. r=brendan 2008-06-20 11:55:49 +02:00
Igor Bukanov
fed7ad6a4a Backed out changeset 97977f224aff due to build breakage 2008-06-20 11:46:36 +02:00
Igor Bukanov
ac0a058f20 [Bug 433382] More efficient interpreter switch when computed goto
is not available. r=brendan
2008-06-20 10:06:45 +02:00
Igor Bukanov
26b618a50f Backed out changeset 21527193c49b: the patch has used CSRCS, not CPPSRCS. 2008-06-20 09:45:29 +02:00
Igor Bukanov
feb0f05335 [Bug 433382] More efficient interpreter switch when computed goto is not available. r=brendan 2008-06-20 09:36:56 +02:00
Benjamin Smedberg
3fcc924cd2 Return to building spidermonkey as C++, because we believe we found the cause of the perf regression elsewhere (non-code).
--HG--
rename : js/src/js.c => js/src/js.cpp
rename : js/src/jsapi.c => js/src/jsapi.cpp
rename : js/src/jsarena.c => js/src/jsarena.cpp
rename : js/src/jsarray.c => js/src/jsarray.cpp
rename : js/src/jsatom.c => js/src/jsatom.cpp
rename : js/src/jsbool.c => js/src/jsbool.cpp
rename : js/src/jscntxt.c => js/src/jscntxt.cpp
rename : js/src/jscpucfg.c => js/src/jscpucfg.cpp
rename : js/src/jsdate.c => js/src/jsdate.cpp
rename : js/src/jsdbgapi.c => js/src/jsdbgapi.cpp
rename : js/src/jsdhash.c => js/src/jsdhash.cpp
rename : js/src/jsdtoa.c => js/src/jsdtoa.cpp
rename : js/src/jsemit.c => js/src/jsemit.cpp
rename : js/src/jsexn.c => js/src/jsexn.cpp
rename : js/src/jsfile.c => js/src/jsfile.cpp
rename : js/src/jsfun.c => js/src/jsfun.cpp
rename : js/src/jsgc.c => js/src/jsgc.cpp
rename : js/src/jshash.c => js/src/jshash.cpp
rename : js/src/jsinterp.c => js/src/jsinterp.cpp
rename : js/src/jsinvoke.c => js/src/jsinvoke.cpp
rename : js/src/jsiter.c => js/src/jsiter.cpp
rename : js/src/jskwgen.c => js/src/jskwgen.cpp
rename : js/src/jslock.c => js/src/jslock.cpp
rename : js/src/jslog2.c => js/src/jslog2.cpp
rename : js/src/jslong.c => js/src/jslong.cpp
rename : js/src/jsmath.c => js/src/jsmath.cpp
rename : js/src/jsnum.c => js/src/jsnum.cpp
rename : js/src/jsobj.c => js/src/jsobj.cpp
rename : js/src/jsopcode.c => js/src/jsopcode.cpp
rename : js/src/jsparse.c => js/src/jsparse.cpp
rename : js/src/jsprf.c => js/src/jsprf.cpp
rename : js/src/jsregexp.c => js/src/jsregexp.cpp
rename : js/src/jsscan.c => js/src/jsscan.cpp
rename : js/src/jsscope.c => js/src/jsscope.cpp
rename : js/src/jsscript.c => js/src/jsscript.cpp
rename : js/src/jsstr.c => js/src/jsstr.cpp
rename : js/src/jsutil.c => js/src/jsutil.cpp
rename : js/src/jsxdrapi.c => js/src/jsxdrapi.cpp
rename : js/src/jsxml.c => js/src/jsxml.cpp
rename : js/src/prmjtime.c => js/src/prmjtime.cpp
2008-05-27 16:58:12 -04:00
Benjamin Smedberg
71997df754 Back out revision bd9c9cbf9ec8 (build spidermonkey as C++) for perftesting and profit.
--HG--
rename : js/src/js.cpp => js/src/js.c
rename : js/src/jsapi.cpp => js/src/jsapi.c
rename : js/src/jsarena.cpp => js/src/jsarena.c
rename : js/src/jsarray.cpp => js/src/jsarray.c
rename : js/src/jsatom.cpp => js/src/jsatom.c
rename : js/src/jsbool.cpp => js/src/jsbool.c
rename : js/src/jscntxt.cpp => js/src/jscntxt.c
rename : js/src/jscpucfg.cpp => js/src/jscpucfg.c
rename : js/src/jsdate.cpp => js/src/jsdate.c
rename : js/src/jsdbgapi.cpp => js/src/jsdbgapi.c
rename : js/src/jsdhash.cpp => js/src/jsdhash.c
rename : js/src/jsdtoa.cpp => js/src/jsdtoa.c
rename : js/src/jsemit.cpp => js/src/jsemit.c
rename : js/src/jsexn.cpp => js/src/jsexn.c
rename : js/src/jsfile.cpp => js/src/jsfile.c
rename : js/src/jsfun.cpp => js/src/jsfun.c
rename : js/src/jsgc.cpp => js/src/jsgc.c
rename : js/src/jshash.cpp => js/src/jshash.c
rename : js/src/jsinterp.cpp => js/src/jsinterp.c
rename : js/src/jsiter.cpp => js/src/jsiter.c
rename : js/src/jskwgen.cpp => js/src/jskwgen.c
rename : js/src/jslock.cpp => js/src/jslock.c
rename : js/src/jslog2.cpp => js/src/jslog2.c
rename : js/src/jslong.cpp => js/src/jslong.c
rename : js/src/jsmath.cpp => js/src/jsmath.c
rename : js/src/jsnum.cpp => js/src/jsnum.c
rename : js/src/jsobj.cpp => js/src/jsobj.c
rename : js/src/jsopcode.cpp => js/src/jsopcode.c
rename : js/src/jsparse.cpp => js/src/jsparse.c
rename : js/src/jsprf.cpp => js/src/jsprf.c
rename : js/src/jsregexp.cpp => js/src/jsregexp.c
rename : js/src/jsscan.cpp => js/src/jsscan.c
rename : js/src/jsscope.cpp => js/src/jsscope.c
rename : js/src/jsscript.cpp => js/src/jsscript.c
rename : js/src/jsstr.cpp => js/src/jsstr.c
rename : js/src/jsutil.cpp => js/src/jsutil.c
rename : js/src/jsxdrapi.cpp => js/src/jsxdrapi.c
rename : js/src/jsxml.cpp => js/src/jsxml.c
rename : js/src/prmjtime.cpp => js/src/prmjtime.c
2008-05-27 12:19:17 -04:00
edward.lee@engineering.uiuc.edu
03eba17305 Bug 387935, Always build JS as C++, r=benjamin
--HG--
rename : js/src/js.c => js/src/js.cpp
rename : js/src/jsapi.c => js/src/jsapi.cpp
rename : js/src/jsarena.c => js/src/jsarena.cpp
rename : js/src/jsarray.c => js/src/jsarray.cpp
rename : js/src/jsatom.c => js/src/jsatom.cpp
rename : js/src/jsbool.c => js/src/jsbool.cpp
rename : js/src/jscntxt.c => js/src/jscntxt.cpp
rename : js/src/jscpucfg.c => js/src/jscpucfg.cpp
rename : js/src/jsdate.c => js/src/jsdate.cpp
rename : js/src/jsdbgapi.c => js/src/jsdbgapi.cpp
rename : js/src/jsdhash.c => js/src/jsdhash.cpp
rename : js/src/jsdtoa.c => js/src/jsdtoa.cpp
rename : js/src/jsemit.c => js/src/jsemit.cpp
rename : js/src/jsexn.c => js/src/jsexn.cpp
rename : js/src/jsfile.c => js/src/jsfile.cpp
rename : js/src/jsfun.c => js/src/jsfun.cpp
rename : js/src/jsgc.c => js/src/jsgc.cpp
rename : js/src/jshash.c => js/src/jshash.cpp
rename : js/src/jsinterp.c => js/src/jsinterp.cpp
rename : js/src/jsiter.c => js/src/jsiter.cpp
rename : js/src/jskwgen.c => js/src/jskwgen.cpp
rename : js/src/jslock.c => js/src/jslock.cpp
rename : js/src/jslog2.c => js/src/jslog2.cpp
rename : js/src/jslong.c => js/src/jslong.cpp
rename : js/src/jsmath.c => js/src/jsmath.cpp
rename : js/src/jsnum.c => js/src/jsnum.cpp
rename : js/src/jsobj.c => js/src/jsobj.cpp
rename : js/src/jsopcode.c => js/src/jsopcode.cpp
rename : js/src/jsparse.c => js/src/jsparse.cpp
rename : js/src/jsprf.c => js/src/jsprf.cpp
rename : js/src/jsregexp.c => js/src/jsregexp.cpp
rename : js/src/jsscan.c => js/src/jsscan.cpp
rename : js/src/jsscope.c => js/src/jsscope.cpp
rename : js/src/jsscript.c => js/src/jsscript.cpp
rename : js/src/jsstr.c => js/src/jsstr.cpp
rename : js/src/jsutil.c => js/src/jsutil.cpp
rename : js/src/jsxdrapi.c => js/src/jsxdrapi.cpp
rename : js/src/jsxml.c => js/src/jsxml.cpp
rename : js/src/prmjtime.c => js/src/prmjtime.cpp
2007-07-16 11:40:49 -07:00