1805b63c9f77b324f91468614f00ee6b9e4a4d71: Fixed a bug that triggered the tracer at TRACE_THRESHOLD/2 already.
Andreas Gal <gal@uci.edu> - Sat, 31 May 2008 09:53:16 -0700 - rev 17187
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Fixed a bug that triggered the tracer at TRACE_THRESHOLD/2 already.
5e055a8c1fef2ef1038820bc2285eca4b53e14dd: The table is now per-thread in a multi-threaded environment, and per-runtime otherwise. During code generation we merely allocate a loop table slot to each loop. Each thread will enlarge the table as needed in JSOP_HEADER.
Andreas Gal <gal@uci.edu> - Fri, 30 May 2008 18:58:43 -0700 - rev 17186
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
The table is now per-thread in a multi-threaded environment, and per-runtime otherwise. During code generation we merely allocate a loop table slot to each loop. Each thread will enlarge the table as needed in JSOP_HEADER.
0c74d1995a37ea4f9844bb86023994fffff6fb00: Add a per-runtime loop attribute table that associates a jsval attribute with every loop in the code. The jsval is used initially as a counter until a certain threshold is reached, at which point the loop is traced and compiled and the resulting native code object is stored in the jsval to be executed for future encounters of the loop.
Andreas Gal <gal@uci.edu> - Fri, 30 May 2008 10:11:56 -0700 - rev 17185
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Add a per-runtime loop attribute table that associates a jsval attribute with every loop in the code. The jsval is used initially as a counter until a certain threshold is reached, at which point the loop is traced and compiled and the resulting native code object is stored in the jsval to be executed for future encounters of the loop.
5eee494d5f061157f47c00d9c76605c00fb7b7d5: Steer macro naming in jsinterinlines.h using a macro. This allows us to prefix all primitives with some prefix (i.e. interp_) when we compile the tracer and replace them with new primitives that invoke the interpreter version first, and then do some tracer specific action.
Andreas Gal <gal@uci.edu> - Thu, 29 May 2008 17:14:42 -0700 - rev 17184
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Steer macro naming in jsinterinlines.h using a macro. This allows us to prefix all primitives with some prefix (i.e. interp_) when we compile the tracer and replace them with new primitives that invoke the interpreter version first, and then do some tracer specific action.
bd1d2405ea5ecf6592cbeb4ff9b5682b7cc5cdec: Fix goof in switching from word to jsval counters.
Brendan Eich <brendan@mozilla.org> - Wed, 28 May 2008 23:12:45 -0700 - rev 17183
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Fix goof in switching from word to jsval counters.
8019f065443a8ada678b2f8f1efcd8f5ed2c3350: Instrument loop headers with jsvals above fp->vars and below fp->spbase.
Brendan Eich <brendan@mozilla.org> - Wed, 28 May 2008 19:07:32 -0700 - rev 17182
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Instrument loop headers with jsvals above fp->vars and below fp->spbase.
4036ebe64345becdac54ca4c084f01a8cb5f4f85: Split trace-supporting inlines, add ifdefs/macros for deriving js_TracingInterpret in jstracer.cpp.
Brendan Eich <brendan@mozilla.org> - Wed, 28 May 2008 19:07:25 -0700 - rev 17181
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Split trace-supporting inlines, add ifdefs/macros for deriving js_TracingInterpret in jstracer.cpp.
c75cf4011be75d3db32d4db7ed7096cc21f91f80: Style (and substance for vim users: left brace opening in column 1 enables [[ navigation).
Brendan Eich <brendan@mozilla.org> - Wed, 28 May 2008 19:07:16 -0700 - rev 17180
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Style (and substance for vim users: left brace opening in column 1 enables [[ navigation).
1c495025f185a9e1e3beb14f064b88af12e20e68: Make relational operations (<,<=,>,>=) traceable.
Andreas Gal <gal@uci.edu> - Tue, 27 May 2008 10:45:58 -0700 - rev 17179
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Make relational operations (<,<=,>,>=) traceable.
cca08ddd5e978ee3e055b576b522f884a57720e2: Mark getting and setting arguments and local variables as safe for tracing.
Andreas Gal <gal@uci.edu> - Mon, 26 May 2008 23:40:52 -0700 - rev 17178
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Mark getting and setting arguments and local variables as safe for tracing.
77e835f850beea7167ae6a665607c0991e531fd0: Make branch instructions traceable using a new primitive guard_boolean_is_true.
Andreas Gal <gal@uci.edu> - Mon, 26 May 2008 23:33:23 -0700 - rev 17177
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Make branch instructions traceable using a new primitive guard_boolean_is_true.
bc4ea1dfdb2db4f84f18cd9e712b541cb0c0f7ac: Enable tracing for selected opcodes that do not have any remaining tracing hazards.
Andreas Gal <gal@uci.edu> - Mon, 26 May 2008 20:04:58 -0700 - rev 17176
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Enable tracing for selected opcodes that do not have any remaining tracing hazards.
1e8aed6c7201d4db8e8ff1eb332ad8654888d10d: Opcodes that can be traced through can be declared with TRACE_CASE(op). Currently all opcodes are declared as BEGIN_CASE(op), which automatically aborts trace recording. In addition, error handlers (defined with DEFINE_HANDLER) also abort trace recording. At every backwards branch trigger monitor_branch(), which will monitor for new trace tree anchors.
Andreas Gal <gal@uci.edu> - Mon, 26 May 2008 18:55:16 -0700 - rev 17175
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Opcodes that can be traced through can be declared with TRACE_CASE(op). Currently all opcodes are declared as BEGIN_CASE(op), which automatically aborts trace recording. In addition, error handlers (defined with DEFINE_HANDLER) also abort trace recording. At every backwards branch trigger monitor_branch(), which will monitor for new trace tree anchors.
5c552143c1b3c335cd55bdc38d2368213815777b: Introduce primitives for common binary operations.
Andreas Gal <gal@uci.edu> - Mon, 26 May 2008 17:29:28 -0700 - rev 17174
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Introduce primitives for common binary operations.
343a7e6713a3673d1884d728b97b82a8412e69b9: Convert macro code in jsinterp.cpp into inline functions and introduce trace primitives (prim_*, guard_*, call_*).
Andreas Gal <gal@uci.edu> - Mon, 26 May 2008 15:27:13 -0700 - rev 17173
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Convert macro code in jsinterp.cpp into inline functions and introduce trace primitives (prim_*, guard_*, call_*).
5c9fdaab8776db17eab4258784a15f3fca4e675c: From Igor's patch for bug 433382.
Brendan Eich <brendan@mozilla.org> - Sat, 24 May 2008 11:39:18 -0700 - rev 17172
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
From Igor's patch for bug 433382.
251c171475d361646abfddf5df87e29505b6c95a: Fix bad merge.
Brendan Eich <brendan@mozilla.org> - Sat, 24 May 2008 10:17:15 -0700 - rev 17171
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Fix bad merge.
5783ce0bad4f085912b1697ccfed22b61e150798: Igor's patch for bug 433382, r=me.
Brendan Eich <brendan@mozilla.org> - Fri, 23 May 2008 23:44:08 -0700 - rev 17170
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Igor's patch for bug 433382, r=me.
9f158c90185bcae0c60c7376b9039095c3202bca: Fix POP_STACK to take a macro out param.
Brendan Eich <brendan@mozilla.org> - Fri, 23 May 2008 22:18:36 -0700 - rev 17169
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Fix POP_STACK to take a macro out param.
ef81950a59e686a777e38f128901b352befcd381: First round of macro cleanups to enable tracing.
Brendan Eich <brendan@mozilla.org> - Fri, 23 May 2008 19:24:10 -0700 - rev 17168
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
First round of macro cleanups to enable tracing.
(0) -10000 -3000 -1000 -300 -100 -50 -20 +20 +50 +100 +300 +1000 +3000 +10000 +30000 +100000 +300000 tip