Andreas Gal
|
57a8fae3d1
|
Merge.
|
2008-08-29 15:17:20 -07:00 |
|
Andreas Gal
|
9e7246a2b9
|
Track locations of control-flow merges in cfgMerges during recording (452869).
|
2008-08-29 15:12:17 -07:00 |
|
David Anderson
|
a2fdc866ff
|
Fixed assumptions that nanojit's insCall() would not clobber the input argument array (bug 452853, r=gal).
|
2008-08-29 14:22:21 -07:00 |
|
David Anderson
|
f10bd19c8e
|
Abort recording on invalid string indexes for JSOP_GETELEM (bug 452713, r=brendan).
|
2008-08-29 13:05:41 -07:00 |
|
Brendan Eich
|
f92de94117
|
Fix bogus JOF_VARPROP test; fix uninitialized id in JSOP_IN recorder, should have caught it when I reviewed danderson's patch.
|
2008-08-29 00:58:10 -07:00 |
|
Brendan Eich
|
655888f31e
|
Consolidate equal and cmp code harder, trace switch ops, use INS_CONST more (bug to be filed -- bugzilla down atm).
|
2008-08-28 23:50:48 -07:00 |
|
Andreas Gal
|
1115d0162b
|
Unroll loops we were not able to call once, but only if we don't have a tree available for that loop header.
|
2008-08-28 23:19:23 -07:00 |
|
Andreas Gal
|
535bdef3ee
|
Merge.
|
2008-08-28 22:34:14 -07:00 |
|
Andreas Gal
|
c263b7a218
|
Merge.
|
2008-08-28 22:33:45 -07:00 |
|
David Anderson
|
951c95658a
|
Fixed trying to record JSOP_IN with some unusuable left-hand values (bug 452724, r=brendan).
|
2008-08-28 22:33:32 -07:00 |
|
Andreas Gal
|
4fb4d1fdc5
|
Monitor downward branches only during recording (452709).
|
2008-08-28 22:33:22 -07:00 |
|
Brendan Eich
|
1f07d79c75
|
Abort trace if forInLoop values are not stable; currently, not strings (bug 452703).
|
2008-08-28 21:41:15 -07:00 |
|
Brendan Eich
|
25a591f870
|
Fixed bogus assertion in test_property_cache (bug 452693, r=dvander).
|
2008-08-28 21:15:39 -07:00 |
|
Andreas Gal
|
f10a08c384
|
Cleanup detection of gotos that were emitted as a result of a BREAK statement.
|
2008-08-28 17:46:25 -07:00 |
|
Andreas Gal
|
65bc53f864
|
Merge.
|
2008-08-28 17:01:22 -07:00 |
|
Andreas Gal
|
c0e0852952
|
Notify the monitor of all branches, not just backwards branches.
|
2008-08-28 17:00:52 -07:00 |
|
Blake Kaplan
|
977123733e
|
Bug 452338 - Abort on the weird case where we find a global name on the prototype of the scope chain. r=brendan
|
2008-08-28 16:37:03 -07:00 |
|
Andreas Gal
|
c274daed5c
|
Merge.
|
2008-08-28 14:51:16 -07:00 |
|
David Anderson
|
1b50da7117
|
Abort recording on JSOP_INCPROP with an invalid slot (bug 452336, r=brendan).
|
2008-08-28 14:43:44 -07:00 |
|
Andreas Gal
|
453ea3339f
|
If the inner tree cannot be adjusted to match the call site of the outer tree because it uses an int where the outer tree uses a double, trash the inner tree, not the outer one. In CallTree, return the innermost guard we return from, not the outermost one. Jump over at most 1 loop edge that doesn't go back to our own header, not an arbitrary amount.
|
2008-08-28 14:24:58 -07:00 |
|
David Anderson
|
48fe80af99
|
Merge.
|
2008-08-28 13:15:34 -07:00 |
|
David Anderson
|
eb051d8c73
|
Better fix for bug 451666 - only track new rval for primitives (r=brendan).
|
2008-08-28 13:14:59 -07:00 |
|
Blake Kaplan
|
1006bbf99c
|
Bug 452333 - Don't push tagged jsvals on the stack. r=brendan
|
2008-08-28 12:40:48 -07:00 |
|
David Anderson
|
d7c4af1e0c
|
Merge.
|
2008-08-28 11:56:45 -07:00 |
|
David Anderson
|
d7b5791be9
|
Track new rval from JSOP_RETURN when constructing inline frames (same as JSOP_STOP).
|
2008-08-28 11:55:58 -07:00 |
|
Blake Kaplan
|
2bcc0a39b5
|
Bug 452573 - The interpreter's JSOP_VOID doesn't push anything, so we shouldn't expect it to. r=brendan
|
2008-08-28 11:55:27 -07:00 |
|
Jesse Ruderman
|
df0d2c793b
|
Remove extra space in tracing statistics message (bug 452571). r=gal
|
2008-08-28 00:16:50 -07:00 |
|
Brendan Eich
|
5d132dba83
|
Record JSOP_IN (452563, r=gal).
|
2008-08-27 23:00:43 -07:00 |
|
Andreas Gal
|
2316d281a0
|
Keep unrolling inner loops as long we are not hitting the same inner loop edge twice in a row (452362).
|
2008-08-27 17:48:15 -07:00 |
|
Andreas Gal
|
4b9cda096c
|
Merge.
|
2008-08-27 17:26:36 -07:00 |
|
Andreas Gal
|
cff18f06cd
|
Fix trashing of inner trees. Keep track of trees that call to a tree and flush them as well since they directly embed the code address. Since flushing an inner tree might invalidate the tree we are currently compiling, trees are now trashed in the destructor of TraceRecorder.
|
2008-08-27 17:25:56 -07:00 |
|
David Anderson
|
ccc26331ca
|
Removed INS_CONSTPTR use with JSVAL_TAG to discourage future 64-bit problems. Fixed 32-bit build.
|
2008-08-27 16:32:11 -07:00 |
|
David Anderson
|
98306ccb74
|
Merge.
|
2008-08-27 16:09:17 -07:00 |
|
David Anderson
|
d0d64bbeff
|
Added LIR_qior/pior. Fixed more AMD64 page jumping bugs. Fixed some other AMD64 usage bugs in jstracer.
|
2008-08-27 16:08:59 -07:00 |
|
Andreas Gal
|
e8fcb3bd37
|
Merge.
|
2008-08-27 14:48:59 -07:00 |
|
Andreas Gal
|
3fb237f38c
|
Loops with a single iteration start tracing, but never complete since we immediately walk past the loop edge after the first iteration. At least try to complete the loop around it by walking past such thin inner loops when compiling the outer loop (452362).
|
2008-08-27 14:46:57 -07:00 |
|
Brendan Eich
|
4842b435c5
|
Oops, not enough copying...
|
2008-08-27 13:54:05 -07:00 |
|
Brendan Eich
|
510ec8bdce
|
Fix a bug Jesse reported: insufficient copy/paste from record_JSOP_CALL to record_JSOP_NEW.
|
2008-08-27 13:52:46 -07:00 |
|
Brendan Eich
|
9cb246a8fc
|
Fix another broken assert (452372).
|
2008-08-27 01:10:44 -07:00 |
|
Andreas Gal
|
7df899a9f5
|
Merge.
|
2008-08-26 21:46:21 -07:00 |
|
Andreas Gal
|
418b15eadd
|
Flag a side exit as loop exit only if the underlying loop condition actually targets the current loop header, otherwise treat it as a branch exit. This is required for inner loops where we unroll the first iteration but the loop condition immediately fails. If we report such exits as loop exits, no branch gets ever attached to them and we keep side-exiting over and over.
|
2008-08-26 21:43:59 -07:00 |
|
Brendan Eich
|
ae9605be38
|
Correct (but sadly a bit slower) property cache guarding (452140, r=shaver).
|
2008-08-26 21:26:10 -07:00 |
|
Brendan Eich
|
e326b78b55
|
Added knownNative for num_toString (bug 452340, r=dvander).
|
2008-08-26 20:00:11 -07:00 |
|
Andreas Gal
|
40796f4154
|
For global code assume that no slots are below the current frame.
|
2008-08-26 13:25:40 -07:00 |
|
Andreas Gal
|
795f7ae426
|
Merge.
|
2008-08-26 01:01:24 -07:00 |
|
Andreas Gal
|
eb0c261390
|
When extending an outer tree from its nesting guard, the guard we actually exited on determines the typemap for the current frame and all inlined frames, whereas the nesting guard is consulted for all type information frames below the current frame.
|
2008-08-26 01:00:53 -07:00 |
|
Brendan Eich
|
a7cdb3ddb2
|
Fix warning.
|
2008-08-25 23:22:20 -07:00 |
|
Andreas Gal
|
4bb68b852c
|
Rename lr->anchor in AttemptToExtendTree()
|
2008-08-25 23:19:00 -07:00 |
|
Andreas Gal
|
24b663fd61
|
Determine the tree we have to grow from the side exit we attach to in AttemptToExtendTree() instead of passing the parameter in.
|
2008-08-25 23:17:38 -07:00 |
|
Brendan Eich
|
43b25b3c09
|
Rename gcDontBlock to runningJittedCode, and assert it's false on entry to js_Interpret (for 451657, but not the fix, just prolog).
|
2008-08-25 23:08:21 -07:00 |
|