Commit Graph

194302 Commits

Author SHA1 Message Date
Andreas Gal
0a1e83ca07 Maintain a separate frame for globals using InterpState->gp.
This will allow nested loops to access the globals interned by outer loops while at the same time sharing parts of the stack of the outer loop.
2008-07-23 23:18:02 -07:00
Andreas Gal
d66db351a0 Add a fast path for nativeFrameOffset that walks entire groups at a time, not slots. Check against the result calculated by the FORALL macro in DEBUG builds (for sanity). 2008-07-23 16:39:17 -07:00
Andreas Gal
0c67428824 Merge. Make sure we clear out all slots from the tracker when leaving a frame. 2008-07-23 15:56:27 -07:00
Andreas Gal
475f3b2370 When addressing locations above the stack water level, use ->sp as base. Shaver accidently changed this to ->spbase when merging Igor's patch, so we were writing past the water mark and the stores were killed. 2008-07-23 15:48:15 -07:00
shaver@mozilla.org
ee1bc42ef1 tighten up some bounds, still not quite right 2008-07-23 11:42:52 -04:00
Andreas Gal
e0f05951e4 Lazy fill the stackTracker as we lookup the nativeFrameOffset for values. Purge all entries related to the current frame when it is popped. This code could be further simplified if Tracker was a template. 2008-07-23 02:57:56 -07:00
shaver@mozilla.org
d853312135 merge from andreas 2008-07-23 01:08:23 -04:00
shaver@mozilla.org
0ae0232183 merge (still not working, probably box/unbox dumbness) 2008-07-23 01:06:18 -04:00
shaver@mozilla.org
13beafcd1a merge (now compiling, untested) 2008-07-23 00:20:29 -04:00
shaver@mozilla.org
d6b7e95f5b merge (mostly, doesn't build) 2008-07-22 23:58:43 -04:00
Andreas Gal
28d41c849c Handle leaving of frames in one central place. 2008-07-22 20:16:12 -07:00
Philippe M. Chiasson
caae253454 Bug 444818 - Ensure gconf is always correctly initialized. r=soc sr=roc 2008-07-22 22:38:22 -04:00
roc@localhost
720ceb1f92 Bug 445297. Optimize filters so that changes to the source image don't have to repaint the entire filter. r=longsonr,sr=mats 2008-07-23 14:15:27 +12:00
Andreas Gal
fa30479a65 Reduce HOTLOOP threshold to 2. 2008-07-22 18:31:44 -07:00
Andreas Gal
86108222f1 Avoid calculating native frame offset by tracking the last load/store for every slot and extracting the offset from there. 2008-07-22 17:54:04 -07:00
Daniel Holbert
e0f69967f6 (No code changes) Remove executable bit from the files in content/svg/ that shouldn't be executable. 2008-07-22 17:29:29 -07:00
Andreas Gal
636de55594 Avoid nativeFrameOffset calls in import(). 2008-07-22 17:24:29 -07:00
Andreas Gal
4e7d7ebb5d Merge. 2008-07-21 19:38:03 -07:00
Andreas Gal
988bfce570 Add a pattern to recognize safe_add and emit a simple add for it. 2008-07-21 19:37:43 -07:00
shaver@mozilla.org
c998f5492d use nargs rather than argc, since bytecode only refers to [o-nargs) args 2008-07-21 22:31:08 -04:00
shaver@mozilla.org
4e20ef2007 make time.sh more useful 2008-07-21 21:44:21 -04:00
Andreas Gal
f75ac4ed76 Reverse the insanity that used to be tamarin's arg passing in ins2. Now it makes sense. 2008-07-21 17:59:42 -07:00
Andreas Gal
edaf656e39 Avoid overflow checks on integer adds when its safe to do so. 2008-07-21 17:50:17 -07:00
Andreas Gal
b149b25974 Eliminate entryFrame pointer (not safe to carry that around.) 2008-07-21 16:20:53 -07:00
Andreas Gal
cb8f2b1107 Use callDepth instead of entryFrame in the FORALL macro. 2008-07-21 16:19:38 -07:00
Andreas Gal
568e3f882c Eliminate exit filter, write the type map directly in snapshot. 2008-07-21 15:09:19 -07:00
Andreas Gal
81d604c67d Sink stack-targeting type conversion in the set() path instead of in the ExitFilter. 2008-07-21 15:01:47 -07:00
Andreas Gal
3ca6099bab Use callDepth, not entryFrame in nativeFrameSlots(). 2008-07-21 14:55:41 -07:00
Andreas Gal
7d41fd6a8e Remove excess parameters of verifyTypeStability. 2008-07-21 13:21:00 -07:00
Andreas Gal
83dcd55ff1 Track call depth in the trace recorder. This lays the groundwork to get rid of entryFrame. 2008-07-21 13:18:08 -07:00
shaver@mozilla.org
640220ca0f beginning of entryFrame removal 2008-07-21 15:57:02 -04:00
Andreas Gal
7466af13cc Merge. 2008-07-21 12:44:03 -07:00
Andreas Gal
e4b7f9cdbb Use ti instead of fi for TreeInfo pointers. 2008-07-21 12:43:51 -07:00
Andreas Gal
fe52907712 Rename VMFragmentInfo to TreeInfo. 2008-07-21 12:41:43 -07:00
Andreas Gal
6c9d3d7051 Merge. 2008-07-20 17:36:47 -07:00
Andreas Gal
a344d8eb92 Style cleanup and eliminate redundant f2u(i2f|u2f) chains. 2008-07-20 17:36:11 -07:00
Brendan Eich
796ede974c Cite bug 445262 with a FIXME instead of omfgHack_ prefix ;-). 2008-07-20 16:21:45 -07:00
Brendan Eich
bc62129a68 Tighten up js_IsLoopEdge and include JSOP_IFNEX. 2008-07-20 16:11:52 -07:00
Brendan Eich
9de8dbd4a7 Nit patrol. 2008-07-20 16:09:08 -07:00
shaver@mozilla.org
84071cde06 merge time is fun time 2008-07-20 18:04:27 -04:00
shaver@mozilla.org
f3fe654c91 add simple timing harness 2008-07-20 18:03:07 -04:00
Andreas Gal
ba670ddc66 Simplify updating of the side exit target. 2008-07-20 14:56:04 -07:00
shaver@mozilla.org
42c8798d31 simpler loop exit check (backwards is a loop exit, forwards is not) 2008-07-20 17:54:16 -04:00
shaver@mozilla.org
b881262443 force Math to be interned, and defend against non-interned globals until upvar saves us all 2008-07-20 17:23:39 -04:00
Andreas Gal
92ad36939a Use exponential backoff when trying to extend trees. 2008-07-20 14:28:56 -07:00
Vladimir Vukicevic
87718e129a b=446323, Upgrade cairo to 1.6.4-350-g1a9809b; r=vlad 2008-07-20 14:15:22 -07:00
Ted Mielczarek
a7a7988949 bug 446346 - test_Microformats_count.html can fail sporadically with Error thrown during test: test_MicroformatsAPI is not defined - got 0, expected 1. fix the test to move the script block before an iframe whose onload calls a function from it. r=mkaply 2008-07-22 16:28:47 -04:00
Ted Mielczarek
56b60354cb bug 445339 - test_bug_406857.js crashing intermittently on Linux unittest VMs. disable alert service notifications. r=gavin 2008-07-22 16:13:35 -04:00
Andrew Schultz
bc78f96478 merging... 2008-07-22 13:55:56 -04:00
Boris Zbarsky
a2303a11e7 Bug 416317 changing test message to unconfuse tinderbox 2008-07-22 09:44:14 -07:00