ed2e73551ac7b475c8366f0343797ef9df9791e5
2008-06-10 22:30 -0700
Andreas Gal - Merged with Brendan's changes.
2eadd3630e4c926e1a7c17f7e0a561dd29735f7f
2008-06-10 21:46 -0700
Brendan Eich - No need for eval call.
cedc5f7867b69a32179d2d83cc9658e0e505751b
2008-06-10 21:40 -0700
Brendan Eich - Minimize JSInterpreterState, fix warning.
e1a6be3a3f98c679501def18e4480d956626df5d
2008-06-10 22:20 -0700
Andreas Gal - Added code to switch to the tracer and back. Incomplete and for review only.
b4c57593abb2dc9102b631725b5e7c96e60defdd
2008-06-10 19:40 -0700
Brendan Eich - Style nits, plus no need for rt in JSInterpreterState.
0003fed8f30b2d98ad2fad0d68fe8e89359c2b02
2008-06-10 17:45 -0700
Andreas Gal - Create a side-entry path into the interpreter that bypasses the initialization code and allows switching back and forth between two interpreters (i.e. tracing and non-tracing).
9b83fbc282d08c30e1c35d3bbae1afb89304f2b3
2008-06-10 16:49 -0700
Andreas Gal - Added branch monitoring using a single unified branch frequency counter.
ec3574da400646bdbfe5b5b376c4c52818d18334
2008-06-10 14:44 -0700
Andreas Gal - Removed JSOP_HEADER code. Its too costly. This patch restore essentially the same performance as unmodified SM.
37976bfa3bf526de3767ccfeb37002358fe0fbbd
2008-06-10 14:17 -0700
Andreas Gal - Disable JSOP_HEADER counting.
605fa476bd9bd2744b3174e07260731a19ed02e1
2008-06-10 13:59 -0700
Andreas Gal - Use higher optimization settings for jsinterp.cpp to ensure inlining.
0e190672ef4e541f416386160426b62ecd80a61c
2008-06-09 18:30 -0700
Andreas Gal - Fixed typo that caused sunspider to fail.
a66e3757fe3f8a9f7651d7b928c2a7827c6736a1
2008-06-09 14:53 -0700
Andreas Gal - Merge.
431e18f554dc3a911940c708ba6606e55a7562c4
2008-06-09 14:48 -0700
Andreas Gal - Merge.
97859f3b3b92d7d3abd94d2b897618f45e38241b
2008-06-09 14:47 -0700
Andreas Gal - Backed out value_to_iter inline method extraction.
4bd428c4250c68f46c1a3077af53b0d85e915e1e
2008-06-09 14:46 -0700
Andreas Gal - Merge.
0e51ce4705a99306be73abe441fef2b343ec6fd1
2008-06-09 14:45 -0700
Andreas Gal - Backed out do_dorinloop inline method extraction.
e72b04a575265bf06358e80c3952fee1a2fd7b1e
2008-06-08 17:05 -0700
Brendan Eich - Merge.
74ede2099d05fbac83fb44ee8b35b82a62bf2bb5
2008-06-09 14:33 -0700
Andreas Gal - Backed out extraction of code from the interpreter loop as inline method.
18e5bb903af37da1e38f3ad3c2bc10ef40e78e85
2008-06-06 15:11 -0700
Andreas Gal - Added tag tested for changeset d1a7596d7887
d1a7596d788757799a1aa5f5d09eac32ff811831
2008-06-06 15:11 -0700
Andreas Gal - Transform do_dorinloop goto/fall through hack into a proper inline method.
d02d00fbb9f606125a9b2d04ab2c2387c7a34113
2008-06-06 13:32 -0700
Andreas Gal - Convert value_to_iter goto/fall through hack into a proper inlined method.
cefafc563f49ffe6d323a9525e52f957f4eac0c6
2008-06-06 15:12 -0700
Brendan Eich - Fix firefox, etc., (top-level mozilla) builds.
783ab3f4f488fb54bf50ccb6a7ac424c4217f84f
2008-06-04 00:09 -0700
Brendan Eich - Merge.
39fddc89d6c7646ec1742f2264ca113ab21d5e38
2008-06-03 23:52 -0700
Brendan Eich - First stage of loop table work; bitmap free space management and GC hook-up still to come.
15fb0c1efd77e38d1499822ab500e8169ceaec01
2008-06-03 23:50 -0700
Brendan Eich - Fix decompiler (hack, really) to cope with misplaced JSOP_HEADER in update part of for(;;) loop.
bee80ed3540fd4086a0b8d59691c87dfab774639
2008-06-03 16:21 -0700
Brendan Eich - Merge, simplify names, and police style.
48ffc3e5564b38c2e67a12f5b9889acd91bee787
2008-06-03 14:48 -0700
Brendan Eich - JSOP_HEADER takes a byte index of loop header counting from script->loopBase, and related changes.
82fcc97a2c99dae4f628b11bd2d7f938cd315c7e
2008-06-03 13:51 -0700
Brendan Eich - Fix ReconstructPCStack oplen code, extend js_OpLength to avoid cs recalculation where possible.
d7a5198071ce956e89e79f5ace3b175107a11031
2008-06-03 21:01 -0700
Andreas Gal - Introduced a JavaScript recording script that is loaded dynamically.
a35cf568c2f12b06c38863a546ea29cbb9df325e
2008-06-03 17:35 -0700
Andreas Gal - Store the recorder script in JSTraceMonitor and make sure its traced by the GC. Also clean up the tracing of JSTraceMonitor.
855d3dd9f89581f3bfdb2aac7a81264ff6523cef
2008-06-03 17:27 -0700
Andreas Gal - Backed out previous attempt to find a place to stash the recorder script.
159f25b5b55290dbdd963bb4bf95aa27ca9ddb50
2008-06-03 17:24 -0700
Andreas Gal - Backed out changeset 3029f4d57bd2
f40c6d08bbc5f891c4dabd80fbb39a36af655ffd
2008-06-03 17:15 -0700
Andreas Gal - Switch to a uniform style for jstracer.cpp.
3029f4d57bd20990dd25434b89d552da4850975e
2008-06-03 17:14 -0700
Andreas Gal - Add location in the context where we can hold the recorder script and make sure the GC traces it.
3f653ed082c6919e7fd127b12f2e510a9db68ce2
2008-06-03 17:04 -0700
Andreas Gal - Remove InitTacer. Pointless for JSRuntime.
8b55e6657beace519053785a5598a3723e50c214
2008-06-03 13:29 -0700
Andreas Gal - Compiler fixes for CAS patch.
acac4e2f37133db3f91904aac9c2aa5eb5d59317
2008-06-03 13:22 -0700
Andreas Gal - Merge.
3212c3f806cce803a5614c0542046159f914e657
2008-06-03 12:37 -0700
Brendan Eich - Fix so it compiles, also avoid else after return.
25c9be07232c76c60aa3b7608f6feb7e0fcb7c53
2008-06-03 10:06 -0700
Andreas Gal - Make js_CompareAndSwap visible outside jslock.cpp.
16ffabb5defbb8c5480573e57764c580bef26876
2008-06-02 23:26 -0700
Andreas Gal - Move all inlines that do not represent primitives out of jsinterpinlines.h since we don't have to overwrite them in jstracerinlines.h. They live in jsinterp.cpp now. Added missing error handling for prim_ddiv and prim_dmod. Make sure prim_ddiv and prim_dmod do not call other primitives. Fixed bug in dmod (-1 should be n, but since all invocations had n=-1 this was a non-issue).
cc2af8bca37f0d5641f8099423574fcfe831c567
2008-06-02 18:06 -0700
Brendan Eich - Fiddle loop table slot interface and impl in hope of freeing slots over time.
224cd9c69a164a5b040cdec99f794a2b50ddfae2
2008-06-02 18:05 -0700
Brendan Eich - Use correct idempotent include guard macro name.
b8bab0f8f4a135802b3d614398b7aa973dce4412
2008-06-02 17:28 -0700
Brendan Eich - Merge and undo js_AllocateLoopTableSlot reparam.
69e89ed25d335659980fe1ec708dddeb1dc715e8
2008-06-02 17:19 -0700
Brendan Eich - No JS_TRACER ifdefs, keep line len < 80, reparameterize jstracer.cpp functions, js_OpLength helper.
6b03a869bb1cea802988c7eac042c67a82122ee7
2008-06-02 17:16 -0700
Brendan Eich - Avoid overlong lines per modeline comments.
5c416b3706ae7db79a9bc27563cf03d383c32790
2008-05-31 15:29 -0700
Brendan Eich - Merge, style nits, no locking for tracing.
2a51b11c390c0d826cffaa21fbb48ce559fc93c2
2008-05-31 10:17 -0700
Brendan Eich - Left brace style.
340fd2ddb2ae206533d473def16f7bfa28a22222
2008-05-30 18:37 -0700
Brendan Eich - merge
da54ae4ebb7c3adcf89174796f39ee3494cc9f8b
2008-05-28 23:29 -0700
Brendan Eich - merge
09d8fde18a45248202b1a122563f09312229ac01
2008-05-28 20:16 -0700
Brendan Eich - Fix goof in switching from word to jsval counters.
07a3235bb1f19842e1a051e155424cc44711a897
2008-05-28 18:00 -0700
Brendan Eich - Instrument loop headers with jsvals above fp->vars and below fp->spbase.
e707f1da531eb7d985fb0f26fe3b288113bb97fe
2008-05-28 14:19 -0700
Brendan Eich - Split trace-supporting inlines, add ifdefs/macros for deriving js_TracingInterpret in jstracer.cpp.
0ac401c7dcceefd8025ceaef027072f565a530c3
2008-05-28 13:48 -0700
Brendan Eich - Style (and substance for vim users: left brace opening in column 1 enables [[ navigation).
b46fcf1b955182486e98993738b5c9f1cf338099
2008-05-31 18:12 -0700
Andreas Gal - Assign fresh loop table slots for all JSOP_HEADER opcodes in a script as it is thawed since the slots we stored there are likely stale by now.
1805b63c9f77b324f91468614f00ee6b9e4a4d71
2008-05-31 09:53 -0700
Andreas Gal - Fixed a bug that triggered the tracer at TRACE_THRESHOLD/2 already.
5e055a8c1fef2ef1038820bc2285eca4b53e14dd
2008-05-30 18:58 -0700
Andreas Gal - 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
2008-05-30 10:11 -0700
Andreas Gal - 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
2008-05-29 17:14 -0700
Andreas Gal - 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
2008-05-28 23:12 -0700
Brendan Eich - Fix goof in switching from word to jsval counters.
8019f065443a8ada678b2f8f1efcd8f5ed2c3350
2008-05-28 19:07 -0700
Brendan Eich - Instrument loop headers with jsvals above fp->vars and below fp->spbase.
(0) -10000 -3000 -1000 -300 -100 -60 +60 +100 +300 +1000 +3000 +10000 +30000 +100000 tip