Robert Sayre
8be5b171b9
Backed out changeset c03ebf340688. Bye-bye middle-deletes and their O(n^2) worst case complexity; hello dictionary-mode scopes (473228, r=jorendorff).
2009-12-01 09:56:16 -05:00
Blake Kaplan
f9ed6eeaa4
Bug 468506 - JS_GetFrameThis needs to call js_ComputeThis in more cases. r=brendan
...
--HG--
extra : rebase_source : 2a107feb26544159f04b60c27508338cef8fdf7f
2009-11-30 16:05:44 -05:00
Brendan Eich
c731045c51
Bye-bye middle-deletes and their O(n^2) worst case complexity; hello dictionary-mode scopes (473228, r=jorendorff).
2009-11-20 16:14:42 -08:00
Jason Orendorff
3f11018c72
Bug 519719 - TM: crash [@ JS_GetFrameThis] - SynthesizeFrame passes partly-uninitialized JSStackFrame to callHook. r=mrbkap.
2009-11-13 11:04:23 -06:00
Igor Bukanov
dd905004ad
bug 527803 - avoiding unnecessary js_AddRoot. r=brendan
2009-11-12 23:13:25 +01:00
David Mandelin
5ee0760ca7
Bug 519363 debugging followup: strip diagnostic instrumentation, r=lw
2009-11-09 16:57:47 -08:00
Blake Kaplan
2c0508106c
Bug 520572 - Set watchpoints on the object that's guaranteed to see all changes. r=brendan
2009-11-04 19:42:41 +01:00
Brendan Eich
9f9a05b0c3
Don't build a stack frame to execute empty scripts (516827, r=igor).
2009-10-18 17:41:24 -07:00
Robert Sayre
8e2e9f852b
Merge tracemonkey to mozilla-central.
2009-10-10 20:42:24 -05:00
Jim Blandy
f4a407f114
Bug 515233: Make the static level its own parameter to JSCompiler::compileScript. r=igor
...
Pre-patch, the initial static level at which a script should be
compiled to run is passed in the upper sixteen bits of the tcflags
parameter to JSCompiler::compileScript; because JSTreeContext::tcflags
is a uint16, while the tcflags parameter is a uint32, we know the
parameter's upper bits are free.
However, we would like to enlarge JSTreeContext::tcflags to 32 bits,
as we already have a handful of new flags that belong there. This
patch moves the static level to its own parameter, which has a default
argument.
2009-10-08 10:29:03 -07:00
David Mandelin
dbad0b0f5d
Bug 519363 - topcrash [@ js_Interpret], change some code to aid in debugging efforts. r=brendan
...
--HG--
extra : rebase_source : 51c16011f74f154bee8d124b2dedfd5f2f5a5a62
2009-10-07 17:30:34 -07:00
Blake Kaplan
f823db9527
Bug 517041 - Instead of giving pseudo frames an sp, protect against null sps during GC. r=brendan
2009-09-16 16:13:41 -07:00
Blake Kaplan
0d3ac085c7
Bug 516897 - Give the pseudo frame an sp that the GC can appreciate. r=waldo
2009-09-16 00:49:25 -07:00
Luke Wagner
854c0294df
Bug 412571 - replace thisp with thisv (r=brendan,mrbkap)
2009-09-11 19:07:00 -07:00
Jason Orendorff
b53824855d
Bug 513119 - Change JSScript macros to methods. r=Waldo.
2009-09-09 18:52:55 -05:00
Brendan Eich
7a412f40b3
JSTempValueRooter JSTVU_SINGLE over-constrains GC-thing against static allocation (515000, r=gal).
2009-09-07 00:35:27 -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
Igor Bukanov
b919139e8d
bug 511425 - removal of JSObjectOps.(get|set)RequiredSlot. r=brendan
2009-08-28 09:53:26 +04:00
Jason Orendorff
dafc9b5d2a
Bug 508685 - Remove last parameter of defineProperty op. r=brendan.
2009-08-26 14:28:36 -07:00
David Anderson
744033066f
Removed JSStackFrame::callee (bug 512029, r=brendan).
2009-08-24 17:09:44 -07:00
Igor Bukanov
7e607aac4d
bug 495061 - js_PutArgsObject and js_PutCallObject that never fail. r=brendan
2009-08-14 20:43:16 +02:00
Jason Orendorff
9dc4a54a5d
Bug 498488 - Change some JSObject macros to methods. r=Waldo.
2009-08-11 15:05:44 -05:00
David Mandelin
c1486b955e
Bug 508178: guard that arguments object refers to the same frame if used on trace, r=jorendorff
2009-08-05 12:39:10 -07:00
Igor Bukanov
1cdc6fe8e2
bug 507573 - followup - fixing a typo in putActivationObjects usage.
2009-08-05 16:27:54 +02: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
ca5953ea0c
bug 507573 - put activation clenup. r=brendan
2009-08-04 12:55:58 +02:00
Mark Steele
ff339aa3b6
Bug 497999: collect context-specific TraceVis data in JS objects, r=jorendorff
2009-07-30 11:48:02 -07:00
Jason Orendorff
eb14203c0c
Bug 506786 - JSScope::trace method. r=brendan.
2009-07-28 04:00:35 -05: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
Jason Orendorff
a31f80165c
Bug 503080 - Remove prototype-scope-sharing. r=brendan.
2009-07-21 16:25:11 -05:00
Andreas Gal
1af8dfb112
Avoid integer division in NewGCThing path (503157, r=jwalden).
2009-07-14 17:06:09 -07:00
Andreas Gal
f552010935
Make js_ValueToString inline (503669, r=jwalden).
2009-07-13 14:55:04 -07:00
Andreas Gal
d788e5a1d4
Make CHECK_FOR_STRING_INDEX an inline function (503666, r=jwalden).
2009-07-11 15:41:32 -07:00
Blake Kaplan
2afead1cba
Bug 502449 - Now that our pseudo-frame can have a call object it needs slots, too. r=igor
2009-07-10 15:07:19 -07:00
Brendan Eich
f60779aef5
Bug 503343 - Change JSScope macros to methods. r=jorendorff
2009-07-09 15:27:21 -05:00
Blake Kaplan
4c0da90619
Bug 501270 - Make pseudo-frames have call objects if they're around a heaveyweight function to preserve engine invariants. r=brendan
2009-07-01 11:40:36 -07:00
Benjamin Smedberg
3d4a869324
Bug 491988 - Annotation fixes required for analyzing JS_REQUIRES_STACK for function pointers, r=jorendorff
2009-06-25 15:12:19 -04:00
Jason Orendorff
52fe5a97ba
Bug 497618 - Change JSString macros to methods. r=Waldo.
2009-06-10 20:29:44 -05:00
Blake Kaplan
c538fe444e
Bug 497998 - Remove obsolete assertion. r=brendan
2009-06-12 14:53:25 -07:00
Blake Kaplan
dda0e2bd98
Bug 497119 - Don't assume that we have a cx->fp (or that fp is on cx->fp at all). Set up display as it would have been when fp was active, though. r=brendan
2009-06-11 14:12:23 -07:00
Benjamin Smedberg
040c645b55
Followup to bug 496824 - reverse the order of the asserts so that we know accessing cx->fp is safe
2009-06-08 17:07:26 -04:00
Brendan Eich
ad476aa98c
Add static analysis incantation, plus assert cx->fp for sanity (496824, r=mrbkap).
2009-06-08 13:35:43 -07:00
Brendan Eich
77da9d75ed
Bug 494235: wrap escaping optimized closures for the debugger API (r=igor/mrbkap).
2009-06-04 18:58:47 -07:00
Blake Kaplan
9026da602e
Bug 493315 - Random cleanup in jsdbgapi.cpp. r=sayrer
2009-05-15 15:59:00 -07:00
Brendan Eich
52153f3522
Bug 488842 - Local Scope Variables are not displayed by default (r=mrbkap).
2009-04-22 23:22:42 -07: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
Robert Sayre
150b7d8a28
Merge tracemonkey to mozilla-central.
2009-03-24 13:49:05 -04:00
Igor Bukanov
a8094a7903
bug 437325 - JSThread is no longer shared between JSRuntime instances. r=brendan
2009-03-24 13:07:35 +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
Robert Sayre
695b4646c3
Merge tm to mc
2009-02-19 11:48:08 -05: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
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
Andreas Gal
b67445e7eb
Re-land bug 475396. It seems it didn't cause the orange-ness after all.
2009-02-03 23:57:12 -08:00
Andreas Gal
71d9ce93bc
Backed out bug 475396. Suspected of causing Linux orange-ness.
2009-02-03 20:31:05 -08:00
Blake Kaplan
db79b857e5
Bug 475396 - Disable upvar optimizations under JS_EvaluateUCInStackFrame because we can't vouch for the display being right. r=brendan
2009-02-03 13:20:19 -08:00
Ben Turner
60956ac6bd
Bug 460882. r+sr=mrbkap.
2009-02-16 13:16:13 -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
Brendan Eich
0122eef654
Bug 453955 - "Assertion failure: sprop->setter != js_watch_set || pobj != obj, at jsdbgapi.c" (r=mrbkap, relanding).
2009-01-23 00:50:35 -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
Brendan Eich
629c3385c4
Bug 453955 - "Assertion failure: sprop->setter != js_watch_set || pobj != obj, at jsdbgapi.c" (r=mrbkap).
2009-01-23 00:50:35 -08:00
Igor Bukanov
f28d80b499
Backed out changeset e117c22cc1d1 - the landed patch for bug 437325 has a shutdown leak.
2009-03-22 10:15:27 +01:00
Igor Bukanov
a61176553e
bug 437325 - JSThread is no longer shared between JSRuntime instances. r=brendan
2009-03-22 10:07:14 +01:00
Blake Kaplan
c878e5becb
Bustage fix from bug 458020
2009-01-06 14:34:16 -05:00
Blake Kaplan
63803e5282
Bug 458020 - Ensure that the display is correct when evaluating a script in a stack frame. r=brendan
...
--HG--
extra : rebase_source : 01aba83379c17c0abda66ce44adb5d04686fc923
2009-01-06 14:17:12 -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
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
Brendan Eich
18d5749230
Fix upvar decompilation for eval-from-fun case (452441, r=igor).
2008-08-29 00:24:11 -07:00
Igor Bukanov
5202ccb583
bug 450392 - fixing -Wstrict-aliasing=2 warnings
2008-08-26 10:46:34 +02: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
Graydon Hoare
78450de1f0
Bug 444845, js hooks to control vtune, r=sayrer
2008-07-29 15:19:26 -07:00
Graydon Hoare
7c4aa69e9d
Bug 444023, Add JS functions to stop/start callgrind, r=sayrer
2008-07-08 15:58:08 -07: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