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
Igor Bukanov
b8405f1171
bug 487846 - optimizing shape prediction for set opcodes. r=brendan
2009-04-29 07:07:21 -07:00
Graydon Hoare
bb4177dccd
Bug 490044 - TM: Add deep-bailing write barrier to global shape change code, r=brendan.
2009-04-24 17:47:32 -07:00
Graydon Hoare
3471a48ea3
Bug 470964 - Simulate CFG in imacro assembler and decompiler, r=brendan.
2009-04-24 09:07:49 -07:00
Brendan Eich
7f4de719f8
Fix dangling JS_PROPERTY_CACHE_METERING bits broken by patch for bug 489171.
2009-04-20 17:32:36 -07:00
igor
48c3925a9a
js_SetPropertyHelper does not null *entryp for read-only properties (489171, r=gal,brendan).
2009-04-20 17:00:59 -07:00
Igor Bukanov
4ad2e764fa
bug 488414 - js_GenerateShape just schedules, not run, the GC. r=brendan,gal
2009-04-20 12:10:29 +02:00
Igor Bukanov
fd49b19773
Backed out changeset f4662701526b (bug 488414) to fix !JS_THREADSAFE compilation errors
2009-04-20 11:59:36 +02:00
Igor Bukanov
56547f8087
bug 488414 - js_GenerateShape just schedules, not run, the GC. r=brendan,gal
2009-04-20 10:17:28 +02:00
Igor Bukanov
ba556afe6d
bug 487039 - caching only white-listed non-globals on the scope chain. r=brendan
2009-04-18 20:10:59 +02:00
Andreas Gal
adc0da147c
Merge.
2009-04-17 12:44:37 -07:00
Andreas Gal
da0094a55c
Backed out changeset 324bb9dc8372 (bug 487204 is implicated in top site failures).
2009-04-17 12:41:00 -07:00
Andreas Gal
6520b20732
Backed out changeset 5bd116148175 (attempting to re-land bug 487204).
2009-04-16 17:56:18 -07:00
Andreas Gal
3b10c56019
Backed out changeset d1a4ee3d0c59 (bug 487204, due to possible leak).
2009-04-16 12:19:24 -07:00
Andreas Gal
51c5e8d189
Properly calculate 'this' object on trace and side exit if we have to wrap (488203, r=mrbkap,jorendorff).
2009-04-16 12:21:45 -07:00
Andreas Gal
c6e4da316b
Backed out changeset 062ea62f9bda (backed out bug 488203 again).
2009-04-16 12:18:46 -07:00
Andreas Gal
69d6e84fc4
Backed out changeset 64d7df1fe160 (re-landing 488203).
2009-04-16 10:16:14 -07:00
Andreas Gal
a943161ace
Backed out changeset e8c23c42db7f (bug 488203) to see whether it causes the leak.
2009-04-16 10:07:53 -07:00
Andreas Gal
53d87f13a2
Properly calculate 'this' object on trace and side exit if we have to wrap (488203, r=mrbkap).
2009-04-15 17:54:37 -07:00
Igor Bukanov
5836717df3
bug 487204 - avoiding extra locks for js_Native(Get|Set). r=brendan
2009-04-16 02:36:14 +02:00
Andreas Gal
05faccf228
Backed out changeset d1a4ee3d0c59 due to build fail, test fail, and perf regressions.
2009-04-15 14:20:52 -07:00
Igor Bukanov
577cb23ac0
bug 487204 - avoiding extra locks for js_Native(Get|Set). r=brendan
2009-04-15 21:13:27 +02:00
Igor Bukanov
95c0598199
bug 488285 - fixing strict mode warnings with DOm window object. r=brendan
2009-04-15 16:09:58 +02:00
Andreas Gal
4c09e7eb02
Backed out bug 488203.
2009-04-14 23:44:34 -07:00
Andreas Gal
e01cfd34c3
Properly compute 'this' object on trace and wrap if necessary (488203, r=mrbkap).
2009-04-14 19:52:09 -07:00
Igor Bukanov
6da0ea9b5e
bug 462734 - fixing JSOP_BINDNAME caching issues. r=brendan
2009-04-11 10:11:06 +02:00
Igor Bukanov
d738892163
Backed out changeset 595ebe7b82fa - it had wrong patch
2009-04-11 10:07:42 +02:00
Igor Bukanov
de22fe3e47
bug 462734 - fixing JSOP_BINDNAME caching issues. r=brendan
2009-04-11 10:04:24 +02:00
Jeff Walden
61aee1746d
Bug 473096 - js1_5/Regress/regress-366601.js - Internal Error: script too large. r=brendan
2009-04-10 17:41:13 -07:00
Blake Kaplan
1c5e6afeac
Bug 487684 - Store the last trace PC to pass into the decompiler. r=igor
2009-04-10 14:06:28 -07:00
Brendan Eich
26a5b7f3fc
Bug 487563 - Crash [@ js_Interpret] (r=mrbkap).
2009-04-09 18:44:54 -07:00
Brendan Eich
e29805bd5a
Bug 487561 - More cleanup from bug 452498 and bug 487271 patches (r=mrbkap/igor, and this fixes bug 487570).
2009-04-09 15:05:12 -07:00
Andreas Gal
4f7fe5afa4
Bug 485959 - TM: Recording continues across loop edge. r=jorendorff
2009-04-07 00:45:49 -07:00
Andreas Gal
ca62b9e9e3
backout Bug 485959, disable-jit bustage.
2009-04-07 03:34:06 -04:00
Andreas Gal
fd3fd2676a
Bug 485959 - TM: Recording continues across loop edge. r=jorendorff
2009-04-07 03:25:29 -04:00
Jason Orendorff
32b58a38be
Thread-safety comment for bug 479198. r=brendan.
2009-04-06 16:43:45 -05:00
Jason Orendorff
81f9c93dec
Bug 479198 - "Deep" property cache entries not invalidated when shadowed (TIBCO General Interface regression). r=brendan.
2009-04-06 13:24:20 -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
Igor Bukanov
09ffabb7a1
bug 485164 - fixing sharp semantic regressions. r=mrbkap
2009-04-03 09:53:02 +02:00
Jason Orendorff
cd0fe70742
Bug 483179 - TM: JIT embeds stale closure in trace for JSOP_DEFLOCALFUN. r=mrbkap
2009-04-02 14:08:48 -07:00
Jim Blandy
b34fbbe457
Bug 482743: Compute opcode stack usage correctly. r=igor
2009-04-01 11:02:52 -07:00
Jim Blandy
02252a653d
Bug 482743: Fix up bytecode execution tracing. Allow tracing to file. r=igor
...
js_TraceOpcode: Remember the last bytecode we traced explicitly,
instead of subtracting 'len' from regs.pc, which isn't reliable.
Decline to trace values in script prologues (between 'code' and
'main'). Decline to walk off the bottom of the stack when the 'last
bytecode' is misleading. Flush the stream after each bytecode.
Use the TRACE_OPCODE macro in both threaded and non-threaded
interpreters. Take care to make threaded and non-threaded
interpreters produce the same traces.
In the shell's 'tracing' function, use JS_ValueToBoolean to recognize
all sorts of booleans, and treat a string as the name of a file to
write the trace to.
2009-04-01 08:50:57 -07:00
Andreas Gal
38b604f834
Bug 485022 - TM: Assertion failure: JS_ON_TRACE(cx), at ../jsarray.cpp. r=mrbkap
2009-03-30 16:43:23 -07:00
Igor Bukanov
a7851480ad
bug 469492 - calling the call hook after fully initializing the freame. r=brendan
2009-03-30 15:29:17 +02: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
Igor Bukanov
81a69a36df
bug 427196 - property cache fix. r=brendan
2009-03-23 21:05:25 +01:00