Blake Kaplan
66a733c3bc
Fixed js_String_p_split passing in an undersized array.
2008-08-21 15:17:47 -07:00
Andreas Gal
267f72f5e8
Merge.
2008-08-21 11:42:03 -07:00
Andreas Gal
6dfe36b41f
Fix warning about signed/unsigned comparison.
2008-08-21 11:40:56 -07:00
Robert Sayre
ccd993a58b
Turn on the JIT for tracemonkey mochitests.
2008-08-21 14:16:33 -04:00
Robert Sayre
5b2a3ee0fa
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
ee1287cefd
Merge.
2008-08-21 05:21:37 -07:00
Andreas Gal
538a1f0245
Abort recording when an error occurs.
2008-08-21 05:21:01 -07:00
Brendan Eich
65cd117dea
Fix script->owner maintenance; also fix warning.
2008-08-21 05:04:20 -07:00
Brendan Eich
3bfbf75525
JSThread is not zeroed when allocated, grrr.
2008-08-21 04:51:46 -07:00
Brendan Eich
90efbc7036
Fix typo.
2008-08-21 04:22:48 -07:00
Brendan Eich
09d39d0036
Merge.
2008-08-21 04:17:49 -07:00
Andreas Gal
ad05182e35
Remove FastEval builtin.
2008-08-21 04:17:17 -07:00
Brendan Eich
8d6998aead
Followup upvar fix, easy assertbotch avoidance.
2008-08-21 04:16:50 -07:00
Brendan Eich
d5629d06d7
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
db79b8dc5b
Merge, plus restore TraceRecorder::activeCallOrGlobalSlot.
2008-08-21 03:51:37 -07:00
Brendan Eich
213f3d7e5f
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
4dc2d1c49a
disable tracing with active call object pending perf fix
2008-08-21 03:19:17 -07:00
Andreas Gal
b707c7b62d
Merge.
2008-08-21 03:13:57 -07:00
Andreas Gal
3f9f079dee
Remove FastEval, broken by design (r=brendan).
2008-08-21 03:13:31 -07:00
David Anderson
1d91ed9efc
Fixed code generation bug in AMD64 port. Enabled AMD64 JIT now.
2008-08-21 02:53:53 -07:00
Brendan Eich
95f06acd98
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
3d0d4596e1
Fix CHECK_RECORDER macro to use XOR to evaluate both terms.
2008-08-21 01:38:50 -07:00
Andreas Gal
5882463a97
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
7eba6cb0de
trace |new Array|, via the magic of copy and paste
2008-08-21 00:50:20 -07:00
Brendan Eich
699b3431cd
Merge.
2008-08-21 00:47:51 -07:00
Andreas Gal
b662d761d2
Merge.
2008-08-21 00:45:44 -07:00
Andreas Gal
c3534a178d
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
fa907a7cf9
Tidy up globalShape mismatch reporting.
2008-08-21 00:19:04 -07:00
Andreas Gal
a3eaf36b9e
Export js_NaN.
2008-08-21 00:13:40 -07:00
Brendan Eich
4f94abcf86
Merge.
2008-08-20 23:47:47 -07:00
Brendan Eich
3c720dd40f
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
efeb3bebb5
Merge.
2008-08-20 23:40:24 -07:00
Andreas Gal
c9e85cc13f
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
8f92f3d00c
Increase HOTEXIT to 1 (from 0).
2008-08-20 23:35:00 -07:00
Andreas Gal
2d7690c55c
Eliminate redundant BoxDouble(UnboxDouble) chains.
2008-08-20 23:19:48 -07:00
shaver@mozilla.org
c81ad974d5
say what we're returning from from EnterFrame
2008-08-20 23:12:28 -07:00
Brendan Eich
75d2de0fbd
Merge.
2008-08-20 22:44:16 -07:00
Brendan Eich
7164be1493
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
a2622614d6
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
a02602a81d
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
082876bc3b
Defer eval'ed script destruction to next GC; expose js_obj_eval for tracing.
2008-08-20 22:18:42 -07:00
Andreas Gal
a4438ded7e
Push actual guard that failed in a nested call, not the expected.
2008-08-20 20:12:19 -07:00
Andreas Gal
da23acf9bc
Merge.
2008-08-20 19:25:26 -07:00
Andreas Gal
4c98c4c0a8
Don't emit a guard at the end of CALLNAME and friends since the values CALLNAME puts on the stack (callee, this) are not seen by the interpreter yet, and thus get store killed. Instead, emit the guard in CALL, at which point the values are properly stacked.
2008-08-20 19:24:57 -07:00
shaver@mozilla.org
c66d3db3b8
fix js_IsLoopExit to better handle for-in exits, r=mrbkap
2008-08-20 18:50:49 -07:00
Andreas Gal
dd3e7fc8e5
Add a switch to disable the oracle, in which case we never demote any slots.
2008-08-20 16:10:56 -07:00
Andreas Gal
3b3457d061
Clear the oracle on every GC.
2008-08-20 16:01:56 -07:00
Andreas Gal
e591e5e46b
Merge.
2008-08-20 15:43:57 -07:00
Andreas Gal
73ed9b9d8d
If at loop entry we expect a double, but at the loop tail we store an int because we suck the i2f into the side exit, we have to explicitly cast back up to double using i2f otherwise we won't be able to make sense of the value when we load it at the top of the next iteration.
2008-08-20 15:43:26 -07:00
shaver@mozilla.org
e3e9699e1d
disable vprof building so that we can build on XP
2008-08-20 15:23:44 -07:00