shaver@mozilla.org
|
9c69964575
|
Specialized tracing of Math.sin, as a proof of concept. Doesn't quite work due to regalloc mismatch, but close!
|
2008-07-11 22:59:09 -04:00 |
|
shaver@mozilla.org
|
5b91021cd9
|
Windows cares a lot more about where FASTCALL is; such a sensitive platform
|
2008-07-11 11:40:07 -04:00 |
|
shaver@mozilla.org
|
bf94c0c6b9
|
fix include ordering for THREADSAFE build
|
2008-07-10 08:40:43 -04:00 |
|
Andreas Gal
|
d6b834b98a
|
Move builtin[] table in jsbuiltin.cpp
|
2008-07-08 23:48:06 -07:00 |
|
Andreas Gal
|
aeeff83beb
|
Move the type level from int/double to number. All traces start out as double in all slots, and denote and promote to/from int as needed. The FuncFilter optimizes on-trace casting and elininates redundant f->i-> chains. More optimization needed on this of course, and this code is now a bit slower than the previous integer-register use. However, this does solve the q += 2.5 issues. The heap access code does not properly cast yet and is likely unstable.
|
2008-07-06 15:55:04 -07:00 |
|
Andreas Gal
|
84ec537a0c
|
Merge.
|
2008-07-06 11:19:06 -07:00 |
|
Andreas Gal
|
9501bcd749
|
Added doubleToUint32 builtin and make tracker a template.
|
2008-07-06 10:59:55 -07:00 |
|
shaver@mozilla.org
|
d881a494aa
|
fix builtin_UnboxInt32 signature and name shape_ins for debugging
|
2008-07-06 13:58:59 -04:00 |
|
Andreas Gal
|
100f4ea5e0
|
Added support for semi-stable loop variables. Compiling for(...) q += 2.5; is ridiculously difficult because it flip-flops between int and double. Add support to promote integer values to doubles at the loop tail if at loop entry we expect a double. Since this isn't possible the other way around, we have to get luck that we catch a path into the loop where q is already double. For this we add 3 trigger points (10, 13, 37). We will try three times to record a trace at those iteration counts of a loop. If none succeed the loop is blacklisted. This probably needs more tuning down the road.
|
2008-07-05 23:21:53 -07:00 |
|
Andreas Gal
|
0b28897ad3
|
Add helpers for i->f and f->i conversion. The f->i path goes via builtin calls.
|
2008-07-05 22:04:58 -07:00 |
|
Andreas Gal
|
3ba61e4c01
|
Added missing jsbuiltins.cpp
|
2008-07-05 17:29:55 -07:00 |
|