Commit Graph

593 Commits

Author SHA1 Message Date
David Mandelin
368b225d78 Bug 505591: trace JSOP_NAME for returned closures, r=dvander
--HG--
extra : rebase_source : 496a99feeb0fee876cd72b24e1e753d9b41ea51f
2009-08-27 15:40:37 -07:00
David Mandelin
a086bb3ab9 Bug 510642: traverse scope chain correctly for traced JSOP_BINDNAME, r=jimb 2009-08-27 15:07:46 -07:00
Luke Wagner
a5b9103165 Bug 419743 - Add JSOP_CONCATN (r=waldo) 2009-08-18 15:43:17 -07:00
Jason Orendorff
092787084d Bug 507683 part 2 - Avoid lookup on trace when calling a native getter with no slot. r=gal.
--HG--
extra : rebase_source : 38c552c3c1daad34bda66fc9ced2ec31d954eef0
2009-08-25 15:02:58 -07:00
Jason Orendorff
c45d09492c Bug 507683 part 1 - Trace native getters. r=gal.
--HG--
extra : rebase_source : f73754b7946e3d525b11f5973c61e22bd2f56dba
2009-08-25 15:01:29 -07:00
David Anderson
bed67e910c Removed callee from FrameInfo, and fixed upvar bugs in stack reconstruction (bug 510300, r=dmandelin,brendan). 2009-08-21 08:09:47 -07:00
Graydon Hoare
503c025d90 Bug 511309 - Delete class Fragmento and all uses of it, r=dvander.
--HG--
extra : rebase_source : 47047589288ac0758e0068307b5a8f393db97606
2009-08-20 17:22:47 -07:00
Graydon Hoare
ebe9c3f20b Bug 511237 - Remove primary use of Fragmento from jsregexp, r=dmandelin. 2009-08-18 15:32:54 -07:00
David Mandelin
6e0758faf2 Trailing whitespace cleanup, no_r=me 2009-08-20 15:21:14 -07:00
David Anderson
57bffd92e3 Consolidated inner global typemap completion logic and fixed a bug when extending nested exits (bug 510518, r=gal,sayrer). 2009-08-20 13:06:27 -07:00
David Anderson
16fa18ade6 Added trace tree visualizer (bug 506714, r=gal). 2009-08-19 16:11:59 -07:00
Jason Orendorff
5d4cab246e Bug 507446 - TM: use return values instead of outparams for box_jsval, unbox_jsval. r=dmandelin.
--HG--
extra : rebase_source : e49f886c1723d90064cd11da0959f4a1e0fe23f4
2009-08-19 17:00:18 -05:00
Nicholas Nethercote
c035e918c7 Bug 511012 - TM: don't use addName() and insStorei() together. r=gal. 2009-08-18 09:27:48 +10:00
David Mandelin
46854c2304 Bug 509599: on trace, call putArguments when returning from JS function via either return or stop, r=jorendorff 2009-08-17 15:29:09 -07:00
Andreas Gal
5d82186f20 Don't flush the code cache every time we GC (506117, r=brendan). 2009-08-17 14:50:57 -07:00
David Mandelin
184e8b155d Backed out changeset 238e8b557e4f: causing tjss orange
--HG--
extra : rebase_source : 49cfd40e67221067c45c85a5b96db39d22be1f67
2009-08-14 19:17:00 -07:00
David Mandelin
a5a7e420d0 Bug 505591: trace JSOP_NAME for returned closures, r=dvander 2009-08-14 16:02:47 -07:00
Jason Orendorff
56b69d0816 Bug 508051 part 1 - Avoid imacros for JSOP_SETELEM. Re-landing per comment 8. r=gal. 2009-08-14 15:47:04 -05:00
Andreas Gal
25b9ed2a98 Backed out bug 508051. Fails trace-test/mandelbrot. 2009-08-13 04:08:34 -07:00
Jason Orendorff
cc37757a20 Bug 508051 part 1 - Avoid imacros for JSOP_SETELEM. r=gal. 2009-08-12 15:27:01 -05:00
David Anderson
869bf43660 Cleaned up and refactored AttemptToStabilizeTree (bug 509089, r=gal). 2009-08-10 22:15:52 -07:00
David Mandelin
86609aa9f8 Bug 508187: do stack push after all guards when tracing JSOP_INCNAME et al, r=gal 2009-08-10 13:03:50 -07:00
Graydon Hoare
b8154cc364 Bug 504462 - Merge tamarin's CodeAlloc into tracemonkey, r=gal. 2009-07-15 16:50:01 -07:00
David Anderson
829a35875e Cleanup of deduceTypeStability and closeLoop, take two (bug 497948, r=gal+sayrer). 2009-08-07 14:08:23 -07: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
David Mandelin
bcef71432b Bug 507449: Trace JSOP_GETXPROP, r=gal 2009-08-04 11:01:13 -07:00
Jason Orendorff
2df7b71611 Bug 507665 - Avoid imacros for JSOP_GETELEM and JSOP_CALLELEM. r=gal. 2009-08-03 11:38:28 -05:00
David Mandelin
bac4a5e107 Bug 495330: trace JSOP_INCNAME and related ops for closures, r=gal 2009-07-31 17:52:30 -07:00
Graydon Hoare
2e92fcbbe3 Backed out changeset d0be9284ea67 2009-07-30 14:28:26 -07:00
Mark Steele
ff339aa3b6 Bug 497999: collect context-specific TraceVis data in JS objects, r=jorendorff 2009-07-30 11:48:02 -07:00
David Mandelin
f7a94971a0 Bug 507053: fix on-trace scope chain computation for JSOP_BINDNAME, r=gal 2009-07-30 11:34:35 -07:00
Jason Orendorff
9a9d7d84d3 Bug 507156 - JSOP_TABLESWITCH always aborts, sometimes without an abort message. r=dmandelin. 2009-07-30 13:06:15 -05:00
Graydon Hoare
caf3859643 Bug 504462 - Merge tamarin's CodeAlloc into tracemonkey, r=gal. 2009-07-15 16:50:01 -07:00
Jason Orendorff
f0ca3c8bd9 Bug 506982 - Fix up jstracer style. r=Waldo. 2009-07-29 11:58:19 -05:00
David Mandelin
cfb0d1fd1b Bug 506821: clean up trailing whitespace, r=brendan 2009-07-27 18:40:12 -07:00
Jason Orendorff
08e0a53af4 Bug 503408 - Trace native setters. r=brendan. 2009-07-27 16:47:34 -05:00
David Mandelin
e8a3e752f8 Bug 496240: trace JSOP_NAME for active (on-stack) closures, r=gal 2009-07-21 16:22:36 -07:00
Robert Sayre
53d13821c6 Merge mozilla-central to tracemonkey. 2009-07-16 11:46:05 -04:00
Neil Rashbrook
7d7253ddaa Bug 501609 Make js/src build with VC7.1 r=graydon 2009-07-15 20:31:26 +01:00
Wesley W. Garland
ee6d0ceed7 Bug 504119 - jstracer.h no longer compiles debug builds on gcc < 4. r=jorendorff.
--HG--
extra : rebase_source : 4ea454201e93f26d87a5707d5b91c295e828cd2f
2009-07-14 19:15:23 -05:00
Robert Sayre
d2f01e78db merge backout 2009-07-14 00:26:05 -04:00
Robert Sayre
663a2781d7 Backed out changeset b6a8110a858f 2009-07-14 00:25:35 -04:00
Blake Kaplan
d142d70ad5 Bug 503286 - Use the right sp for sp_adj to account for tree calls fiddling with state.sp after we've deep bailed. r=jorendorff
--HG--
extra : rebase_source : 2d3e2237ef82d4ea5980b4ece9b484344f450036
2009-07-13 15:44:33 -07:00
David Anderson
3afb790b55 Refactored deduceTypeStability/closeLoop for a general cleanup needed for recursion (bug 497948, r=gal+sayrer). 2009-07-13 13:26:27 -07:00
David Mandelin
975f74c278 Bug 453730: trace JSOP_ARGUMENTS, r=gal 2009-07-08 11:16:41 -07:00
Jason Orendorff
e0ee1845cf Give the LIR instruction for loading obj->map the name "map" in debug output. r=brendan in bug 498565 comment 18.
--HG--
extra : rebase_source : 3c7954123b4b89d0f38b7e6c2397749a9156e342
2009-07-07 06:20:22 -05:00
Andreas Gal
16a60091ed Shortcut lookup flag calculation when on trace (bug 502145, r=igor). 2009-07-06 06:42:13 +02:00
David Anderson
cf5bda02f1 Nits to Queue<T>, assert valid index and support 0 starting size (bug 500554, r=gal). 2009-06-25 17:14:54 -07:00
Jeff Walden
2d9f80b8df Windows bustage fix, r=foopy
--HG--
extra : rebase_source : 3e6a65cb262f12fe73b3ef7657a1f38c9673ad99
2009-06-25 16:36:25 -07:00
Jeff Walden
8b7bef6dd0 Bug 497207 - Define |enum JSTraceType| and stop overloading JSVAL_* for trace-time types. r=jorendorff
--HG--
extra : rebase_source : bb72ca3ad8fab4d0b2affca611630bf5a9559531
2009-06-10 16:58:02 -07:00
David Anderson
3d4b953291 Avoid pedantic errors about trailing commas in lists (build bustage fix). 2009-06-25 16:02:29 -07:00
David Anderson
b6436e2572 Print exit names instead of numbers (bug 500522, r=gal). 2009-06-25 15:32:50 -07:00
Julian Seward
b96eed42da Bug 494864 - Make nanojit debug output easier to follow, r=graydon. 2009-06-24 20:32:00 -07:00
Graydon Hoare
0f04cb5c35 Bug 496674 - Replace FORALL macros with template functions and visitors, take 2, r=gal. 2009-06-19 18:48:05 -07:00
Andreas Gal
6e96f166d2 Check for end of proto chain when walking it (499169, r=mrbkap). 2009-06-23 19:22:54 -07:00
Graydon Hoare
859a94d6ec Backed out changeset 5e1b444c803c, broke static analysis tinderbox. 2009-06-23 16:58:30 -07:00
Graydon Hoare
c8b2433196 Bug 496674 - Replace FORALL macros with template functions and visitors, r=gal. 2009-06-19 18:48:05 -07:00
Nicholas Nethercote
e2a97e3f4c Bug 496448: TraceVis TraceMonkey performance visualization, r=brendan 2009-06-16 09:30:01 +01:00
Jason Orendorff
52fe5a97ba Bug 497618 - Change JSString macros to methods. r=Waldo. 2009-06-10 20:29:44 -05:00
Andreas Gal
659a7a9b6c Implement oracle-based speculative fmod/fdiv/fmul demotion (474443, r=graydon,dvander). 2009-06-12 08:33:32 -07:00
David Mandelin
3db63853e3 Bug 496922: do upvars correctly when the function defining the upvar was called with extra args, r=brendan,gal 2009-06-09 11:49:53 -07:00
David Mandelin
344e868872 Bug 496251: use up-to-date typemap when getting upvar from trace entry native frame, r=gal 2009-06-08 10:48:18 -07:00
Andreas Gal
3882ad59b6 Merge. 2009-06-04 20:12:44 -07:00
Andreas Gal
7d8559c586 Backed out changeset 2ad658e9f42a (bug 495958, re-opened). 2009-06-04 20:12:31 -07:00
David Mandelin
80a97eb5d3 Bug 496319: correctly unpack FrameInfo::argc, r=mrbkap 2009-06-04 15:19:59 -07:00
Andreas Gal
9ded7b0c3e Capture missing globals from current environment, not the tree entry map when extending a side exit (495958, r=graydon). 2009-06-03 12:43:38 -07:00
David Mandelin
a90aee411c Bug 494269: trace JSOP_LAMBDA_FC, r=brendan,gal 2009-06-03 11:19:20 -07:00
David Mandelin
5baa8fe491 Bug 495773: include trace entry JSStackFrame in upvar search, also remove obsolete union from FrameInfo, r=gal 2009-06-01 14:50:02 -07:00
David Mandelin
504424ebf3 Bug 495566: fix stack offset calculations for traces that start at top level, r=gal 2009-05-29 18:50:35 -07:00
David Mandelin
9af4ca2612 Bug 493512: correcting native stack navigation arithmetic, r=gal 2009-05-20 18:57:42 -07:00
Andreas Gal
0d2b989430 Update JSSLOT_ARRAY_COUNT when emitting array constructor code on trace (493255, r=jorendorff). 2009-05-18 15:56:11 -07:00
Andreas Gal
40284299a7 Fix compiler warning (493345, r=brendan). 2009-05-15 21:01:22 -07:00
Blake Kaplan
774d6933f4 Bug 492912 - Clean up the way that TraceRecorder::elem interacts with the rest of the world. r=gal 2009-05-15 15:41:41 -07:00
David Mandelin
112ce8b24b Bug 458838: enable tracing of upvar accesses that go outside the current trace to interpreter state, r=gal 2009-05-11 18:05:44 -07:00
Andreas Gal
4778325174 Ensure that cx->interpState is always accurate by maintaing a stack (490776, r=jorendorff). 2009-05-11 17:25:38 -07:00
David Mandelin
d6c2eeddf4 Bug 491620: make traces specialized for argc, r=gal 2009-05-11 15:57:28 -07:00
Andreas Gal
5f2681ef36 Bug 489836 - TM: chiptune causes Assertion failure: \!ti->typeMap.matches(ti_other->typeMap) 2009-05-11 12:20:41 -04:00
jorendorff
93c6d226d3 Record all calls to native functions (487134, r=gal, brendan). 2009-05-05 14:26:06 -07:00
Jim Blandy
56af1e088d Bug 488018: Propagate errors from tracer to interpreter. r=igor
Rename JSMonitorRecordingStatus to JSRecordingStatus.  The JSMRS_
prefix becomes JSRS_, accordingly.

Make 'record_' functions return JSRecordingStatus, not bool.  'false'
becomes 'JSRS_STOP'; 'true' becomes 'JSRS_CONTINUE'.  Since subsequent
patches will begin to use more than two values (the next assigns
meaning to JSRS_IMACRO), take care to propagate values to callers
accurately.

Define a new recording status, JSRS_ERROR.  Return it from recording
functions when appropriate.  Check for it at appropriate bottlenecks
in tracer and interpreter.

ABORT_TRACE becomes one of:
. ABORT_TRACE, for when we're simply aborting the recording process
. ABORT_TRACE_ERROR, for aborting due to an error
. ABORT_TRACE_CV, for producing an error message and returning something
  other than JSRS_STOP --- some contexts require boolean values.

Conditionally provide an alternative definition for the
JSRecordingStatus type that cannot be converted to 'bool', so that we
can use the C++ compiler to catch improperly converted code.

Use recording function return value for imacro invocation.  Eliminate
the JSFRAME_IMACRO_START frame flag.  Instead, return JSRS_IMACRO
directly from recording functions.
2009-04-30 17:30:46 -07:00
Andreas Gal
cafa156d52 We don't cache access to shared properties in the property cache (490666, r=igor,brendan). 2009-04-30 15:52:13 -07:00
Andreas Gal
776395aee0 Eliminate test_property_cache_direct_hit (490370, r=jorendorff). 2009-04-27 16:01:52 -07:00
Andreas Gal
a89bbaad23 Stay on trace when reading holes from dense arrays (489899, r=brendan). 2009-04-24 16:28:21 -07:00
Andreas Gal
a51f22dbdf Need an API exposed to control code cache size (474497, r=bent,brendan, sr=mrbkap). 2009-04-22 16:52:59 -07:00
Andreas Gal
c5c7bd2f6c Trace getting String.length (484332, r=brendan). 2009-04-21 18:56:24 -07:00
Jeff Walden
c9680230c4 Bug 473117 - Rejigger how guards use side exits, and fix an erroneous comment. r=graydon 2009-04-18 16:47:23 -07:00
Jason Orendorff
4dd9ad09ef Bug 487845 - TM: After deep-bailing, we can lirbuf->rewind() and then return to a dead code page. r=gal.
--HG--
extra : rebase_source : b7de71b526d45c7caed1982fba80c65763a0a9c6
2009-04-15 09:47:02 -05:00
Andreas Gal
c11974bb60 Backed out changeset 4c157cfe2289 (bug 487845). 2009-04-14 21:28:40 -07:00
Jason Orendorff
0616f91d10 Bug 487845 - TM: After deep-bailing, we can lirbuf->rewind() and then return to a dead code page. r=gal. 2009-04-14 08:45:37 -05:00
Brendan Eich
26a5b7f3fc Bug 487563 - Crash [@ js_Interpret] (r=mrbkap). 2009-04-09 18:44:54 -07:00
Jason Orendorff
b5d4ba583e Bug 487676 - Nesting deep-aborting trace calls don't work. r=gal.
--HG--
extra : rebase_source : 436164485bd5e981e5ae8997eed2c371f3ecd77b
2009-04-09 18:07:00 -05:00
Jason Orendorff
a613c0d579 Backout changeset 143e997c858e (bug 484693) because it caused crashes on Mac tinderboxen. 2009-04-07 17:07:11 -05:00
Graydon Hoare
163d74068e Bug 484693 - Remove uses of alloca, r=gal. 2009-04-07 13:47:36 -07:00
Brendan Eich
ec9f3ae4a0 Another static analysis patch (I hope the last; for 452498). 2009-04-05 21:51: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
fa2e6466b2 Bug 479110 - TM: avoid frequent mismatch exits. r=brendan 2009-04-04 17:23:34 -04:00
Andreas Gal
3c19b8b7fc Merge. 2009-04-04 10:15:04 -07:00
Andreas Gal
706120c0fb Backed out changeset 972c44aa9d1f (bug 452598). 2009-04-04 10:14:52 -07:00
Brendan Eich
7485baa00c Merge. 2009-04-04 10:07:44 +01:00
Brendan Eich
5f4d9ff474 upvar2, aka the big one (452598, r=mrbkap). 2009-04-04 10:05:49 +01:00
Andreas Gal
8787072e96 Backed out changeset b512be855093 (bug 484693). See bug for details. 2009-04-04 01:06:04 -07:00