d7359bad0db73deb2b6d2fc69190be2ae7249d8c: Merge.
Andreas Gal <gal@mozilla.com> - Thu, 31 Jul 2008 01:35:56 -0700 - rev 17907
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Merge.
9f3518887174932698b77218307c6818e95365ca: Remove ANY_TYPE and move debug printf around to print entry point even if we can't enter due to type mismatch.
Andreas Gal <gal@mozilla.com> - Thu, 31 Jul 2008 01:35:18 -0700 - rev 17906
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Remove ANY_TYPE and move debug printf around to print entry point even if we can't enter due to type mismatch.
d24e6005ee4c1e86b999e5ae0dd134021dbeb332: Make guard return expected, so we can trace alternate cases easily.
shaver@mozilla.org - Wed, 30 Jul 2008 22:59:13 -0700 - rev 17905
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Make guard return expected, so we can trace alternate cases easily. Better diagnostic for non-global scope chain head.
b78b083dff0fad3e9e63c0ebc252ab22d7f159cb: If trees are not enabled, don't try to reuse state and param1.
Andreas Gal <gal@mozilla.com> - Wed, 30 Jul 2008 21:40:21 -0700 - rev 17904
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
If trees are not enabled, don't try to reuse state and param1.
c506c1cd643bbceceb2c57446e20afaffbb6673b: Re-use initial parameters on tree fragments.
David Anderson <danderson@mozilla.com> - Wed, 30 Jul 2008 23:30:58 -0500 - rev 17903
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Re-use initial parameters on tree fragments.
3ead93ea00f0489bfc81bd5287b9c1c26b7737d1: Implement JSOP_EQ and JSOP_NE over strings, plus JSOP_STRING.
shaver@mozilla.org - Wed, 30 Jul 2008 17:28:59 -0700 - rev 17902
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Implement JSOP_EQ and JSOP_NE over strings, plus JSOP_STRING.
ad31a3eb02efa4a1234f07965bb4e3b65a8fde69: Merge.
Andreas Gal <gal@mozilla.com> - Wed, 30 Jul 2008 16:37:35 -0700 - rev 17901
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Merge.
06fd91141971ad66797e4984ad2b4142d037baa3: Make the global frame layout match the slot layout in the global object. This will allow leaving global values in place when switching trees as long both inner and outer tree use the same value.
Andreas Gal <gal@mozilla.com> - Wed, 30 Jul 2008 16:28:48 -0700 - rev 17900
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Make the global frame layout match the slot layout in the global object. This will allow leaving global values in place when switching trees as long both inner and outer tree use the same value.
f115ed7ab1d6b30e49318a098fd3780ed090203e: - Export JSSLOT_ITER_* from jsiter.cpp to jsiter.h, for jstracer.cpp to use.
Brendan Eich <brendan@mozilla.org> - Wed, 30 Jul 2008 16:32:33 -0700 - rev 17899
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
- Export JSSLOT_ITER_* from jsiter.cpp to jsiter.h, for jstracer.cpp to use. - Fix OBJ_GET_SLOT to be STOBJ_GET_SLOT in jsiter.cpp, no thread safety here (bug on file). - Move JSNativeEnumerator from jsobj.cpp to jsobj.h for jstracer.cpp as well. - Rename JOF_2BYTE JOF_UINT8 for consistency, and actually decompile it. - Trace JSOP_FORVAR (can't do anything in JSOP_ITER, it comes before the loop). - Shortened some guardMyLongSummerVacationWithinBounds names ;-). - Removed/refactored to avoid dslots_ins obligation on all callers.
c6aa6d7d35c75578ffa095695eaf3facc967db91: Merge.
Andreas Gal <gal@mozilla.com> - Wed, 30 Jul 2008 16:06:11 -0700 - rev 17898
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Merge.
695977f6efdef218f8e7f301a27e83f9e3c9d15e: Use isGlobal to distinguish whether a value is a global slot instead of scanning the table every time.
Andreas Gal <gal@mozilla.com> - Wed, 30 Jul 2008 16:05:51 -0700 - rev 17897
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Use isGlobal to distinguish whether a value is a global slot instead of scanning the table every time.
f65c7990a10083860e60524edabb2809ae571e10: trace Math.random
shaver@mozilla.org - Wed, 30 Jul 2008 15:51:44 -0700 - rev 17896
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
trace Math.random
0793c5db30463c567e6ae7e5fae7b2a9675b38b2: Trace String.fromCharCode.
shaver@mozilla.org - Wed, 30 Jul 2008 15:19:25 -0700 - rev 17895
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Trace String.fromCharCode. Handle failure signals of < 0 or NULL from traceable natives.
303d144b8182c8cd87a6d21ac16bedf17a796a01: Clean up the living room a bit since people are going to come by to look at it.
Andreas Gal <gal@mozilla.com> - Wed, 30 Jul 2008 13:34:22 -0700 - rev 17894
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Clean up the living room a bit since people are going to come by to look at it.
4b6d51af439cb4bc44367f06141aaf3c3227387d: Add isGlobal to check whether a value is a slot of the global object.
Andreas Gal <gal@mozilla.com> - Wed, 30 Jul 2008 12:15:53 -0700 - rev 17893
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Add isGlobal to check whether a value is a slot of the global object.
3f908af1a069098a1217d4c85db678b7bffb8432: Note to self: hacking after 4am is detrimental to my spelling.
Andreas Gal <gal@mozilla.com> - Wed, 30 Jul 2008 04:20:48 -0700 - rev 17892
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Note to self: hacking after 4am is detrimental to my spelling.
578a2ef048ca9f621a4c75d1bd76b20197903224: Major shakeup of the interning code for globals. Globals are now detected on demand as they are used and the slots are noted in treeInfo->globalSlots. At the same time the type is recorded in treeInfo->globalTypeMap. The stack type-map is maintained separately in treeInfo->stackTypeMap. All these structures are lists and are maintained as List<T> objects. Imports for globals can appear at the top (if we have already seen some imports for the loop header and are recompiling), or on the fly for lazily found values. We no longer intern all global properties that happen to match a name in the current function, and we also support inlining of functions that touch globals that are not used in the method where the trace started in.
Andreas Gal <gal@mozilla.com> - Wed, 30 Jul 2008 04:17:22 -0700 - rev 17891
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Major shakeup of the interning code for globals. Globals are now detected on demand as they are used and the slots are noted in treeInfo->globalSlots. At the same time the type is recorded in treeInfo->globalTypeMap. The stack type-map is maintained separately in treeInfo->stackTypeMap. All these structures are lists and are maintained as List<T> objects. Imports for globals can appear at the top (if we have already seen some imports for the loop header and are recompiling), or on the fly for lazily found values. We no longer intern all global properties that happen to match a name in the current function, and we also support inlining of functions that touch globals that are not used in the method where the trace started in.
568235abae0bb152c5841e8a8af9ff27fa5a5f52: Use List<T> to maintain global slot list in TreeInfo.
Andreas Gal <gal@mozilla.com> - Wed, 30 Jul 2008 01:38:21 -0700 - rev 17890
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Use List<T> to maintain global slot list in TreeInfo.
764fb8d99acf87855e86fdae258283e7247c6333: Trash entire tree with all the information associated with it when we have a typemap conflict or the global shape changes.
Andreas Gal <gal@mozilla.com> - Wed, 30 Jul 2008 01:29:13 -0700 - rev 17889
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Trash entire tree with all the information associated with it when we have a typemap conflict or the global shape changes.
494833e3f77e6c68988fb8cce7e8280dc6d38703: Remember number of global slots known at that point in the trace in every side exit (forward-looking change to cope with dynamic collection of interned globals.)
Andreas Gal <gal@mozilla.com> - Wed, 30 Jul 2008 00:15:07 -0700 - rev 17888
Push 1452 by shaver@mozilla.com at Fri, 22 Aug 2008 00:08:22 +0000
Remember number of global slots known at that point in the trace in every side exit (forward-looking change to cope with dynamic collection of interned globals.)
(0) -10000 -3000 -1000 -300 -100 -50 -20 +20 +50 +100 +300 +1000 +3000 +10000 +30000 +100000 +300000 tip