Andreas Gal
|
3fa6978605
|
Merge.
|
2008-07-17 00:48:30 -07:00 |
|
Andreas Gal
|
3cd2b84ec4
|
Fixed ASSERT JS_DOUBLE != JS_VOID issue. If the root fragment fails to compile, trash the type-map and re-capture it when we try to re-compile.
|
2008-07-17 00:48:10 -07:00 |
|
shaver@mozilla.org
|
acde4fceb0
|
JSOP_LENGTH
|
2008-07-16 23:53:14 -07:00 |
|
Andreas Gal
|
6cfd498b7c
|
Increase code cache size.
|
2008-07-16 23:47:57 -07:00 |
|
Andreas Gal
|
ad6b349616
|
Merge.
|
2008-07-16 23:39:12 -07:00 |
|
Andreas Gal
|
e2a0438e22
|
Fix f2i(i2f) filter (broken since the last TT sync, argument order changed from right to left to left to right).
|
2008-07-16 23:38:39 -07:00 |
|
Brendan Eich
|
13d6469f9b
|
Prefer getarg;length, etc. to getargprop.
|
2008-07-16 23:33:04 -07:00 |
|
Andreas Gal
|
83ac88d4c7
|
Don't clear out arguments, clear out variables at method entry.
|
2008-07-16 23:04:50 -07:00 |
|
Andreas Gal
|
b243a8350a
|
Better naming of the after_JSOP_CALL event (EnterFrame).
|
2008-07-16 23:00:59 -07:00 |
|
Andreas Gal
|
2442099090
|
Notify the recorder when a new frame was created by JSOP_CALL.
|
2008-07-16 22:58:06 -07:00 |
|
Andreas Gal
|
2379d6dcde
|
Initialize arguments to void and write JSVAL_HOLE's value onto the native stack, not its boxed representation.
|
2008-07-16 22:25:56 -07:00 |
|
Andreas Gal
|
df5005a322
|
Hand in typemap the recorder is supposed to use (preparation for side exit compilation and trees).
|
2008-07-16 21:49:42 -07:00 |
|
Andreas Gal
|
def4afc614
|
Move the allocation of the LIR buffer and the FragmentInfo data structure creation (which includes typemap and interned global calculation) into loopedge.
|
2008-07-16 21:41:03 -07:00 |
|
Andreas Gal
|
af95344998
|
Make JSOP_CALLNAME tell us why it doesn't like to trace.
|
2008-07-16 19:00:14 -07:00 |
|
Andreas Gal
|
74f767e62b
|
Fix generation of VOID immediates and initialize rval after the new frame was setup by CALL.
|
2008-07-16 17:44:44 -07:00 |
|
Andreas Gal
|
db7e41ed40
|
Add generic recorder hooks that are called before and after all opcodes as we trace. We might want to instead just move to pre_OP and post_OP.
|
2008-07-16 17:29:08 -07:00 |
|
Andreas Gal
|
c041bad939
|
Don't intern global function objects onto the native frame since we rarely ever need them anyway (we call them via the property cache).
|
2008-07-16 15:48:51 -07:00 |
|
Andreas Gal
|
7f119dc35a
|
Enable CALLNAME and add test case for it so we can call global functions.
|
2008-07-16 15:40:35 -07:00 |
|
Andreas Gal
|
c7714a3ad5
|
Make sure this/argv[-1] is set fpr CALLVAR and CALLARG.
|
2008-07-16 15:13:27 -07:00 |
|
Andreas Gal
|
04ea9e0e09
|
Enable inlining for calls. Deep bailouts (from within side exits) are generated but are not allowed to be ever taken (for now).
|
2008-07-16 15:01:55 -07:00 |
|
Andreas Gal
|
43b7ba1be4
|
Don't use a builtin for this. For functions its interned in the native frame. For global this we read from fp->thisp. Restore jsinterp.cpp and jsinterp.h (no longer need COMPUTE_THIS exposed).
|
2008-07-16 14:36:50 -07:00 |
|
David Anderson
|
5dca2ad552
|
Synced nanojit with TT tip.
|
2008-07-16 14:21:31 -07:00 |
|
shaver@mozilla.org
|
ef9a5dc216
|
fix GETXPROP; thanks to brendan for playing chewbacca
|
2008-07-16 13:10:17 -04:00 |
|
shaver@mozilla.org
|
f8c80ec490
|
CALLARG, CALLVAR
|
2008-07-15 23:37:57 -04:00 |
|
shaver@mozilla.org
|
4937938676
|
fix scalpel left in nativeFrameSlots from aborted thisp addition to frame
|
2008-07-15 23:20:53 -04:00 |
|
shaver@mozilla.org
|
21a3ec3485
|
implement JSOP_MOD
|
2008-07-15 23:19:29 -04:00 |
|
shaver@mozilla.org
|
3a4c348313
|
Trace JSOP_THIS and JSOP_THISPROP.
Rename getprop to get_prop, just because.
Extract COMPUTE_THIS to jsinterp.h as JS_COMPUTE_THIS for reuse in tracer.
|
2008-07-15 21:37:00 -04:00 |
|
Andreas Gal
|
21490a6e41
|
Fix uncomplete range check for slot numbers of interned globals.
|
2008-07-15 17:10:52 -07:00 |
|
Andreas Gal
|
cd739bdb35
|
Strict aliasing cleanup.
|
2008-07-15 16:14:00 -07:00 |
|
Andreas Gal
|
3aeb53f580
|
Add a few consts to char* pointers to pacify gcc 4.2.
|
2008-07-15 16:04:08 -07:00 |
|
shaver@mozilla.org
|
3693365174
|
rename getpropfromval, it burns mine eyes
|
2008-07-15 18:29:42 -04:00 |
|
Andreas Gal
|
1b783425aa
|
Assign blame where blame is due.
|
2008-07-15 15:05:16 -07:00 |
|
Andreas Gal
|
cbf4813605
|
Merge.
|
2008-07-15 13:14:05 -07:00 |
|
Andreas Gal
|
a81b83090e
|
Sync with TT.
|
2008-07-15 13:06:05 -07:00 |
|
shaver@mozilla.org
|
919139d11b
|
initialize dslots_ins
|
2008-07-15 13:40:11 -04:00 |
|
Brendan Eich
|
3ccdb62685
|
Propagate error exceptions from TraceRecorder ctor; fiddle/trim space.
|
2008-07-15 10:26:15 -07:00 |
|
shaver@mozilla.org
|
7d7ece76a8
|
GETVARPROP, GETARGPROP, GETXPROP
|
2008-07-15 13:17:51 -04:00 |
|
shaver@mozilla.org
|
409bb7f29d
|
more ABORT_TRACE instrumentation (some should be asserts?)
|
2008-07-15 09:07:54 -04:00 |
|
Andreas Gal
|
5848fd6694
|
Generate a list of interned global slots (gslots) when we process the tree header. This list is then used whenever we iterate over the native frame. This is faster and safer than looking up properties in the global object every time.
|
2008-07-15 01:53:39 -07:00 |
|
Andreas Gal
|
84608819b9
|
Remove state exposing accessor functions from recorder and instead hand in that state via the constructor into ExitFilter.
|
2008-07-15 01:27:14 -07:00 |
|
Andreas Gal
|
1693476391
|
Guard in FragmentInfo on the shape of the global object. Don't check for the shape of the global object on the trace.
|
2008-07-15 01:08:13 -07:00 |
|
Andreas Gal
|
bac6ed12f4
|
Store list of interned global slots in struct FragmentInfo
|
2008-07-15 01:03:49 -07:00 |
|
Andreas Gal
|
9f761173f0
|
Added a callstack that will track the pc of the call that caused a function call to be inlined. This is necessary to recover from deep side exits inside inline functions. The callstack is subject to store elimination, so unnecessary stores to the stack will go dead automatically during compilation (i.e. if we inline a function that doesn't have side exits.)
|
2008-07-14 19:12:50 -07:00 |
|
Andreas Gal
|
df84a21add
|
Fix warnings.
|
2008-07-14 17:52:38 -07:00 |
|
Andreas Gal
|
e59427d0f7
|
Use JS_GetGlobalForObject to get the global object. Walking back the call chain is not equivalent and not safe.
|
2008-07-14 16:40:38 -07:00 |
|
shaver@mozilla.org
|
0180d69fd8
|
fix our aliasing idiocy by extending jsdpun, add Math.sqrt, add strict-aliasing to our Makefile.ref flags
|
2008-07-14 18:22:05 -04:00 |
|
Brendan Eich
|
815146e0e4
|
Non-null prop from js_LookupProperty means found, so must unlock obj2 (now pobj) in all such cases.
|
2008-07-14 00:13:31 -07:00 |
|
Andreas Gal
|
4a598274f5
|
Clean up shaver's cleanup.
|
2008-07-13 22:02:42 -07:00 |
|
Andreas Gal
|
28e3ed165f
|
Fixed printing of integer incoming values in DEBUG mode.
|
2008-07-13 21:53:35 -07:00 |
|
shaver@mozilla.org
|
0f64113822
|
merge, and fix locking and logic for FORALL_SLOTS
|
2008-07-14 00:51:43 -04:00 |
|