Commit Graph

114 Commits

Author SHA1 Message Date
Jeff Walden
0ee447d3dd Bug 574992 - Make Date.prototype.toGMTString a normal, non-enumerable, non-alias property; also fixes a failure (with Object.getOwnPropertyNames support) in the MS ES5 tests. r=brendan 2010-06-26 14:08:58 -07:00
Chris Leary
908f8ec587 Back out f8c6a272f2dc. It was working on Try a few minutes ago, I swear! (r=red) 2010-06-26 18:09:07 -07:00
Chris Leary
52608d352b Bug 559408: Turn arena pool macros into methods. (r=gal) 2010-06-26 17:55:00 -07:00
Jeff Walden
036e2b3101 Bug 570551 - Don't use shared-permanent properties to implement RegExp instance properties. r=jorendorff 2010-06-05 18:16:03 -07:00
Jason Orendorff
b776dfabce Bug 568070 - jsapi.cpp refactoring. Part Q, CHECK_REQUEST in js_Atomize and js_AtomizeChars, as requested in reviews.
--HG--
extra : rebase_source : 33f35f7723315a96ccf15d72d23df00e5dd9a238
2010-06-02 00:23:43 -07:00
Andreas Gal
22db0647cc Implement iterate trap for proxy handlers (568413, r=brendan). 2010-05-27 12:03:25 -07:00
Andreas Gal
efd9bd790e Implement ES Harmony Proxies (bug 546590, r=mrbkap). 2010-05-18 19:21:43 -07:00
Robert Sayre
a354ba1cfc Backed out changeset 919950c7f0f0 2010-05-11 11:52:17 -04:00
Chris Leary
299dd52ca1 Bug 559408: Arena pool macros to methods. (r=gal) 2010-05-10 21:46:52 -07:00
Jeff Walden
00f6066393 Bug 552560 - Remove support for __parent__. r=mrbkap 2010-04-11 13:51:00 -07:00
Igor Bukanov
d14ffdc7bb bug 560471 - remove GC_LAST_DITCH and GC_KEEP_ATOMS. r=jorendorff 2010-04-24 00:15:42 +02:00
Dave Herman
ed6c552bb7 Bug 558437 - rename JSCompiler to js::Parser (r=brendan). 2010-04-10 21:15:35 -07:00
Jeff Walden
ad6a89209e Bug 517580 - Unconditionally build with support for getters and setters, remove support for the deprecated { x getter: function() {}} and x getter= function() {} getter syntaxes (mutatis mutandis for setter) now that ES5 provides Object.getOwnPropertyDescriptor and Object.defineProperty and { get x() { } } syntax, and provide __{define,lookup}{G,S}etter__ only if a preprocessor variable is defined (unconditionally provided for the moment). r=luke 2009-10-06 12:35:33 -07:00
Igor Bukanov
90d5fa7237 bug 519476 - replacing JSSTRING_DEFLATED with scanning of the deflated cache. r=jwalden,dmandelin 2010-03-16 21:28:33 +03:00
Vladimir Vukicevic
77502e8e24 Backed out changeset 0b28c109c213; r=waldo,dmandelin 2010-03-15 16:03:57 -07:00
Jeff Walden
e2df507656 Bug 551529 - Remove __count__. r=shaver 2010-03-12 17:09:49 -08:00
Igor Bukanov
6d3a27abc3 bug 519476 - replacing JSSTRING_DEFLATED with scanning of the deflated cache. r=jwalden,dmandelin 2010-03-13 10:01:09 +03:00
Gregor Wagner
dc4711d401 BUG 545303: TM: non API function for JS_CallTracer r=igor 2010-02-18 13:16:02 -08:00
Igor Bukanov
da4f40e4dc bug 528486 - eliminating GCF_CHILDREN. r=brendan 2009-12-14 10:55:17 +03:00
Boris Zbarsky
2e2e3eeb0c Bug 521423. Make JSString 4 words instead of 2; make substring() and company never have to copy. r=brendan 2009-12-03 14:39:42 -05:00
Jim Blandy
60339bbd5a Bug 514567: Define JSAutoAtomList, a variant of JSAutoAtomList with a destructor. r=jorendorff 2009-11-19 12:35:55 -08:00
Jim Blandy
34a27f0c88 Bug 514585: Recognize "use strict" directives. r=igor 2009-11-18 13:33:53 -08:00
Igor Bukanov
9acf40e6f6 bug 517199 - typed GC free lists. r=brendan 2009-10-02 18:34:22 +04:00
Igor Bukanov
b9aa3a1f41 Backed out changeset 31682547b6f1 - bug 517199 has shown persistent failure on Windows tinderboxes. 2009-10-01 15:17:31 +04:00
Igor Bukanov
d74cb55d3b relanding of bug 517199 (Backed out changeset dcbf332bfaba) - typed GC free lsists - implementation. r=brendan 2009-10-01 12:57:15 +04:00
Igor Bukanov
8f1d988c8e bug 517199 - Backed out changeset 47619e6bad9a to investigate windows failures 2009-10-01 09:54:19 +04:00
Igor Bukanov
0267c11f0d bug 517199 - typed GC free lsists - implementation. r=brendan 2009-10-01 08:13:38 +04:00
Jeff Walden
c8f686672d Bug 505587 - Implement ES5 Object.getOwnPropertyDescriptor. r=mrbkap 2009-07-21 19:35:59 -07:00
Brendan Eich
aea922b775 Zim got the bug, man! (514971, r=gal). 2009-09-06 18:15:16 -07:00
Brendan Eich
115e07166f I bust myself back to private, like Sgt. Zim in 'Starship Troopers', in order to fight bugs hand-to-hand with no claim to higher rank (514971, r=gal). 2009-09-06 17:59:17 -07:00
Brendan Eich
098462c563 Check (without regressing hot paths) where needed to avoid treating static JSStrings like gc-things in the heap (514819, r=gal). 2009-09-05 21:48:30 -07:00
Gregor Wagner
2e1104b40f Cache result of Number2String (bug 513530, r=brendan). 2009-09-04 16:28:30 -07:00
Andreas Gal
7d3f588878 Inline GetUnitString fast path (513373, r=sayrer). 2009-08-28 16:30:41 -07:00
Andreas Gal
60fa2078b6 js_GetExistingStringAtom should check for unit strings (512996, r=jorendorff). 2009-08-28 15:53:55 -07:00
Andreas Gal
d4c110a6b1 Avoid bit twiddling on double values (513063, r=brendan). 2009-08-27 13:59:19 -07:00
Brendan Eich
f5c41293a5 Unit strings not in atom table means we must always mark them unless shutting down the runtime (511835, r=gal). 2009-08-21 17:28:05 -07:00
Andreas Gal
0525ca1267 Atomize unit strings at birth (511567, r=shaver). 2009-08-19 19:37:59 -07:00
Luke Wagner
fa2f83712c Bug 507458 - clear the waters a bit regarding JSVAL_BOOLEAN 2009-08-12 16:39:23 -07:00
Andreas Gal
e7f2714ea1 When finalizing, deallocate memory in a separate thread (505612, r=bent,brendan,waldo). 2009-07-27 21:10:12 -07:00
Brendan Eich
be04837737 Fix 502630 (r=Waldo). 2009-07-16 13:16:27 -07:00
Andreas Gal
f552010935 Make js_ValueToString inline (503669, r=jwalden). 2009-07-13 14:55:04 -07:00
Jason Orendorff
52fe5a97ba Bug 497618 - Change JSString macros to methods. r=Waldo. 2009-06-10 20:29:44 -05:00
Brendan Eich
962b187fe5 upvar2, aka the big one take 2 (452598, r=mrbkap). 2009-04-05 21:17:22 -07:00
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
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
Igor Bukanov
4ccdead266 bug 480700 - no more static asserts in headers. r=brendan 2009-03-05 12:12:50 +01: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
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
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
2a666c87e8 Emit JSOP_APPLY for .call(...) (462445, r=brendan). 2008-10-30 16:01:53 -07: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
Andreas Gal
868e7934a2 Emit JSOP_APPLY for .apply(...) similar to JSOP_EVAL for .eval(...) (462209, r=brendan). 2008-10-29 13:30:41 -07:00
Brendan Eich
6ddc16bbe2 Bug 462103 - TM: We don't trace some variants of string + other type (gal+brendan red-headed stepchild). 2008-10-29 00:14:30 -07:00
Robert Sayre
c59514f66e Bug 408838 - DOM binding for native JSON. r+sr=shaver 2008-10-01 02:13:58 -04: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
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
Igor Bukanov
da35201aed [Bug 440184] js_(Lock|Unlock) are defined as external non-inline functions to prevent linkage errors with js shell. r=brendan 2008-07-17 10:22:45 +02:00
Igor Bukanov
d24b2f9846 [Bug 432881] SM: JSVAL_VOID as a pseudo-boolean. r=brendan 2008-06-25 11:43:02 +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