Commit Graph

498 Commits

Author SHA1 Message Date
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