Andreas Gal
f5462e1c0a
Merge.
2008-08-22 17:32:01 -07:00
Andreas Gal
454b252c63
If the outer loop has a value in a float register but the inner tree expects an int, tell the oracle that we want doubles in that slot in the inner tree and trash the inner tree so it gets re-compiled with a matching layout (451673).
2008-08-22 17:31:23 -07:00
Andreas Gal
2fb04231fe
Allocate nanojit code cache incrementally (bug 443111).
2008-08-22 16:37:37 -07:00
David Anderson
36ea645fbe
Bug 451743 - On x86 processors, only use SSE2 if the processor supports it, otherwise default back to x87 FPU (r=gal, sr=mrbkap)
2008-08-22 12:21:27 -07:00
David Anderson
f0606ee551
Fixed x86_64 build issue (accidentally trying to build 32-bit nanojit).
2008-08-21 18:07:26 -07:00
Andreas Gal
1b29fd53e4
Merge.
2008-08-21 16:50:57 -07:00
Andreas Gal
666aeff29e
Fix builtins that were accidentally flagged as CSE/FOLD but really aren't (Math.random i.e.)
2008-08-21 16:49:51 -07:00
Andreas Gal
7da39648cf
Cleanup spacing in builtins.tbl
2008-08-21 16:35:05 -07:00
Blake Kaplan
26c3cd4ea9
Fixed js_String_p_split passing in an undersized array.
2008-08-21 15:17:47 -07:00
Andreas Gal
2563d2bd3d
Merge.
2008-08-21 11:42:03 -07:00
Andreas Gal
80088cd777
Fix warning about signed/unsigned comparison.
2008-08-21 11:40:56 -07:00
Robert Sayre
c6a7088bae
Bug 451580, fix string split assertions and return values. Tests fail with JIT on for other reasons, it seems. r=shaver
2008-08-21 14:06:42 -04:00
Andreas Gal
ee5f8e441f
Merge.
2008-08-21 05:21:37 -07:00
Andreas Gal
8f6bbaaa5f
Abort recording when an error occurs.
2008-08-21 05:21:01 -07:00
Brendan Eich
d62ee36613
Fix script->owner maintenance; also fix warning.
2008-08-21 05:04:20 -07:00
Brendan Eich
b1e05f4fc9
JSThread is not zeroed when allocated, grrr.
2008-08-21 04:51:46 -07:00
Brendan Eich
e4a3506856
Fix typo.
2008-08-21 04:22:48 -07:00
Brendan Eich
7ebaf5bf1c
Merge.
2008-08-21 04:17:49 -07:00
Andreas Gal
a49e15bd85
Remove FastEval builtin.
2008-08-21 04:17:17 -07:00
Brendan Eich
791221dfae
Followup upvar fix, easy assertbotch avoidance.
2008-08-21 04:16:50 -07:00
Brendan Eich
fd148818e1
Add split built-in, also sort knownNatives for my own sanity (should sort builtins.tbl and jsbuiltins.cpp by function while at it, but too tired).
2008-08-21 04:13:07 -07:00
Brendan Eich
147018b013
Merge, plus restore TraceRecorder::activeCallOrGlobalSlot.
2008-08-21 03:51:37 -07:00
Brendan Eich
9cd8e5a539
Upvar, v0.1 (limited to looking up from eval in a function, to the function's args and vars).
2008-08-21 03:47:33 -07:00
shaver@mozilla.org
35915d94ea
disable tracing with active call object pending perf fix
2008-08-21 03:19:17 -07:00
Andreas Gal
f2c2859267
Merge.
2008-08-21 03:13:57 -07:00
Andreas Gal
d9acfb10f0
Remove FastEval, broken by design (r=brendan).
2008-08-21 03:13:31 -07:00
David Anderson
f34f92698f
Fixed code generation bug in AMD64 port. Enabled AMD64 JIT now.
2008-08-21 02:53:53 -07:00
Brendan Eich
324b9c7f4e
Remove lambda-replace built-in, it's not safe to record into a nested js_Interpret.
2008-08-21 01:39:16 -07:00
Brendan Eich
2c4e22add3
Fix CHECK_RECORDER macro to use XOR to evaluate both terms.
2008-08-21 01:38:50 -07:00
Andreas Gal
2e767b124c
Convert undefined to NULL on tree entry if the tree wants an object type.
2008-08-21 01:13:07 -07:00
shaver@mozilla.org
ed7fab1440
trace |new Array|, via the magic of copy and paste
2008-08-21 00:50:20 -07:00
Brendan Eich
321ae383ba
Merge.
2008-08-21 00:47:51 -07:00
Andreas Gal
5a8f2bff2b
Merge.
2008-08-21 00:45:44 -07:00
Andreas Gal
fcd8670fec
If we expect a concrete value but see an undefined come into the trace, convert undefined to the concerete value.
2008-08-21 00:43:45 -07:00
Brendan Eich
9b56ca4984
Tidy up globalShape mismatch reporting.
2008-08-21 00:19:04 -07:00
Andreas Gal
a7b0f45c3f
Export js_NaN.
2008-08-21 00:13:40 -07:00
Brendan Eich
e5f489dcbb
Merge.
2008-08-20 23:47:47 -07:00
Brendan Eich
b9d10512b7
Use JS_FRIEND_API for new JS_ArrayToJSUint8Buffer, etc., and use it on prototypes and definitions (fixes some platform builds).
2008-08-20 23:46:31 -07:00
Andreas Gal
e26e3234f4
Merge.
2008-08-20 23:40:24 -07:00
Andreas Gal
12fcdd141f
Remove bogus fadd +1 check at the end of the loop. We have long switched over to starting slots as int and hence n++ will be emitted as integer add with i2f, so checking for i2f only is sufficient.
2008-08-20 23:39:57 -07:00
Andreas Gal
ddf445130e
Increase HOTEXIT to 1 (from 0).
2008-08-20 23:35:00 -07:00
Andreas Gal
1261e82b42
Eliminate redundant BoxDouble(UnboxDouble) chains.
2008-08-20 23:19:48 -07:00
shaver@mozilla.org
6870d297ef
say what we're returning from from EnterFrame
2008-08-20 23:12:28 -07:00
Brendan Eich
9e4119701e
Merge.
2008-08-20 22:44:16 -07:00
Brendan Eich
e9b635b38a
1. Add activeCallOrGlobalSlot, used by JSOP_NAME, JSOP_CALLNAME, etc. recorders to cope with Call objects on the scope chain, if they represent still-active frames covered by callDepth.
...
2. Add builtin for eval, to be optimized further, to handle very short eval'ed programs as found in popular benchmarks.
3. Add common scopeChain TraceRecorder helper, to generate the LIR to load cx->fp->scopeChain.
4. Add ABORT_TRACE to LeaveFrame for clarity.
2008-08-20 22:40:39 -07:00
Andreas Gal
8468ac7444
Support multiple returns from called trees by continueing the outer tree with a new nested guard.
2008-08-20 22:37:00 -07:00
Andreas Gal
36ddb45efb
Restore state.sp and state.rp before the nested guard exit point so we can have a sequence of them and still have rp/sp adjusted correctly.
2008-08-20 22:23:17 -07:00
Brendan Eich
4a25cf5a32
Defer eval'ed script destruction to next GC; expose js_obj_eval for tracing.
2008-08-20 22:18:42 -07:00
Andreas Gal
e9f3ccf839
Push actual guard that failed in a nested call, not the expected.
2008-08-20 20:12:19 -07:00
Andreas Gal
87295d3d95
Merge.
2008-08-20 19:25:26 -07:00