Luke Wagner
7c96945e3c
Bug 613457 - clean up string interfaces (r=njn)
...
--HG--
extra : rebase_source : 3e77b67fa9fe2cc31312ad99951cf92258a98e64
2011-03-14 13:59:53 -07:00
Jim Blandy
de75b9fa19
Bug 537873: Add a 'strict' argument to C++ property setter functions. r=brendan
...
This changes the type of setters to JSStrictPropertyOp, which is just like
JSPropertyOp except that it takes a 'JSBool strict' argument. Most of the
patch is introducing distinct types and using the appropriate stubs.
The following are left for subsequent patches:
x Similar fixes to the browser outside SpiderMonkey.
x Actually *using* the newly available strictness information. This patch
should have no user-visible effect. I didn't want the interesting stuff
to get lost in this noise.
2011-02-09 11:31:40 -08:00
Chris Leary
29a4e97a8f
Bug 617935: Check string lengths using StringBuffer. (r=lw)
2011-01-12 15:28:58 -08:00
Jeff Walden
59814e4551
Bug 620315 - "Assertion failure: unexpected constantly false guard detected" with "use strict", 4 > this. Fix a problem where we weren't marking functions created by |new Function| as accepting a primitive this value when their body was strict mode, by removing the duplicative bit that was being checked. r=dmandelin
2010-12-22 18:05:07 -05:00
Jeff Walden
fcbd8eb10b
Bug 514570 - 1 - Convert primitive-this-of-type function flags into a single primitive-this flag, to pave way for strict mode unadulterated-this passing. r=jorendorff
2010-10-12 11:50:02 -07:00
Jason Orendorff
630900ee20
Finally get rid of /* Added by JSIFY */ comments. r=Waldo.
2010-10-01 18:46:54 -05:00
Luke Wagner
5e9978f911
Bug 581263 - remove slow natives (r=waldo,mrbkap)
2010-08-16 12:35:04 -07:00
David Mandelin
4c5a188923
[JAEGER] Merge from Tracemonkey.
2010-07-29 13:23:33 -07:00
David Anderson
cf5a8cf505
[JAEGER] Merge from tracemonkey.
2010-07-19 20:49:26 -07:00
Sean Stangl
2cc55ac57e
[JAEGER] Reorder js_ValueToBoolean() based on measured frequencies; (575766, r=dvander).
2010-07-11 18:21:41 -07:00
Luke Wagner
97d36215fd
Change asX to toX, asXRef to getXRef, XTag to XValue
2010-07-05 13:44:59 -07:00
Luke Wagner
99411cc93d
Bug 549143 - fatvals
2010-07-14 23:19:36 -07:00
Igor Bukanov
2019c722fb
bug 571789 - merging JSObjectOps and JSExtendedClass into JSClass. r=jorendorff
2010-06-12 18:29:04 +02:00
Igor Bukanov
181c2cdf3a
Backed out changeset 7b2b90efe57d -- the patch was landed against a tree with a lot of orange. This will hinder the orange resolution.
2010-07-28 14:36:06 +02:00
Igor Bukanov
a69fd0a49f
bug 571789 - merging JSObjectOps and JSExtendedClass into JSClass. r=jorendorff
2010-06-12 18:29:04 +02:00
David Mandelin
da8f91c03f
Fix jsreftest regress-465453.js
2010-05-25 15:57:49 -07:00
David Mandelin
8aa596de26
Fix most MSVC warnings.
2010-05-24 13:26:38 -07:00
Luke Wagner
e374a37e1c
Remove explicit copy, ObjPtr
2010-05-17 22:15:51 -07:00
Luke Wagner
6d87e93eef
30% through jsstr
2010-05-13 18:55:25 -07:00
Luke Wagner
4e6c52c52b
New Tag scheme, no SetObject silliness
2010-05-12 16:36:10 -07:00
Luke Wagner
bd3571c1b5
Still recovering from rebase
2010-05-11 19:00:59 -07:00
Luke Wagner
6c0883c94f
Merge from tracemonkey
2010-05-11 00:41:08 -07:00
Luke Wagner
4e71f5312b
(unrebased) fat value patch
2010-05-10 22:01:31 -07:00
Luke Wagner
c82711e2b5
(unrebased) contiguous patch
2010-03-03 17:52:26 -08:00
Nicholas Nethercote
4139494dcc
Bug 559250 - encapsulate JSSLOT_{PRIMITIVE,DATE,REGEXP}_* within JSObject (take 2). r=brendan.
2010-04-14 18:57:30 -07:00
Nicholas Nethercote
00c793c05f
Backed out changeset 681b0067e61b due to massive breakage
2010-04-14 17:09:17 -07:00
Nicholas Nethercote
e240c1f235
Bug 559250 - encapsulate JSSLOT_{PRIMITIVE,DATE,REGEXP}_* within JSObject. r=brendan.
2010-04-14 16:18:03 -07:00
Igor Bukanov
6bfe4771cc
bug 513190 - avoiding jsint tagging of the private slot data. r=jorendorff
2009-09-05 19:59:11 +04:00
Luke Wagner
1f36a4f0c2
Bug 503952 - Use JSTempVector in jsstr.cpp (r=waldo)
...
--HG--
extra : rebase_source : ac955b5d784ca8fc9a61129e580c2751beb4109f
2009-08-14 16:10:59 -07:00
Luke Wagner
7470eaa57b
Bug 503952 - JSStringBuffer/JSCharBuffer with JSTempVector, part 1. r=jwalden
2009-08-07 20:09:11 -07:00
Igor Bukanov
ef90f6f522
bug 493457 - uniform access to private slots. r=mrbkap, sr=jwalden
2009-08-04 23:06:55 +02:00
Igor Bukanov
9534c3d315
bug 504033 - avoiding calling JSFinalizeStub. r=brendan
2009-07-22 18:23:21 +02:00
Luke Wagner
145fbf91c2
Bug 200505 - Optimization of jsref array_join_sub() function. r=waldo
2009-06-30 20:19:42 -04:00
Robert Sayre
3f97d5e6f5
Backed out changeset b2256abf53c0
2009-06-30 12:14:09 -07:00
Luke Wagner
a6311cf8b5
Bug 200505 - Optimization of jsref array_join_sub() function. r=waldo
2009-06-30 11:29:43 -07:00
Jason Orendorff
52fe5a97ba
Bug 497618 - Change JSString macros to methods. r=Waldo.
2009-06-10 20:29:44 -05:00
Andreas Gal
a89bbaad23
Stay on trace when reading holes from dense arrays (489899, r=brendan).
2009-04-24 16:28:21 -07: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
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
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
Robert Sayre
dfdc67476d
Bug 460333. Implement toJSON for primitive wrapper classes. r=crowder
2008-10-17 14:57:34 -04: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
b16852c1cd
bug 412296 - removal of minarg support for fast native
2008-08-08 18:02:50 +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