Sean Stangl
fc6775cf30
Eliminate syncData() constant hack. b=601657, r=dvander.
2010-10-05 17:08:01 -04:00
David Anderson
2f002d500e
Add local and argument closure information to JSScript (bug 592973, r=brendan+dmandelin).
...
--HG--
extra : rebase_source : 3d36a7908230006f2b048835f7526962fac2b32b
2010-09-13 22:33:44 -07:00
David Anderson
e6ef191c40
Optimize FrameState for large linear scripts (bug 591836, r=dmandelin).
...
* * *
Remove FrameState::base (bug 591836 part 1, r=dmandelin).
* * *
New register pinning invariants (bug 591836 part 2, r=dmandelin).
* * *
Remove FrameState::tosFe() (bug 591836 part 3, r=dmandelin).
* * *
New copy order invariant (bug 591836 part 4, r=dmandelin).
* * *
Optimize immutable frame syncing (bug 591836 part 5, r=dmandelin).
* * *
Optimize frame merging (bug 591836 part 6, r=dmandelin).
* * *
Optimize copying frame entries (bug 591836 part 7, r=dmandelin).
* * *
Optimize mutable frame syncing (bug 591836 part 8, r=dmandelin).
* * *
Optimize syncing in try blocks (bug 591836 part 9, r=dmandelin).
2010-09-21 18:34:42 -07:00
David Anderson
126a9558ea
Merge backout.
2010-09-22 17:41:14 -07:00
David Anderson
2e9af3ac56
Backed out changeset 1af8f0c895bc from PGO bustage
2010-09-22 17:40:31 -07:00
David Anderson
2055a5d505
Fix FrameState::forgetType with eval (bug 598696, r=sstangl).
2010-09-22 11:15:34 -07:00
David Anderson
8421061eb5
Optimize FrameState for large linear scripts (bug 591836, r=dmandelin).
...
* * *
Remove FrameState::base (bug 591836 part 1, r=dmandelin).
* * *
New register pinning invariants (bug 591836 part 2, r=dmandelin).
* * *
Remove FrameState::tosFe() (bug 591836 part 3, r=dmandelin).
* * *
New copy order invariant (bug 591836 part 4, r=dmandelin).
* * *
Optimize immutable frame syncing (bug 591836 part 5, r=dmandelin).
* * *
Optimize frame merging (bug 591836 part 6, r=dmandelin).
* * *
Optimize copying frame entries (bug 591836 part 7, r=dmandelin).
* * *
Optimize mutable frame syncing (bug 591836 part 8, r=dmandelin).
* * *
Optimize syncing in try blocks (bug 591836 part 9, r=dmandelin).
2010-09-21 18:34:42 -07:00
Brian Hackett
c401cdd9f8
OOL fast path for string comparison, bug 579479. r=dvander
2010-09-14 20:07:11 -07:00
David Mandelin
8057a267e7
[JAEGER] Bug 590088: copy only variables into call objects that may be referred to later, r=dvander
2010-08-27 15:54:30 -07:00
David Anderson
0c3b4e8c17
Backed out changeset a804ccdfe7c4.
2010-08-25 11:53:17 -04:00
David Anderson
0255d4ffbc
[JAEGER] Fixed copying garbage to some callobj slots (bug 590088, r=dmandelin).
2010-08-25 10:56:48 -04:00
David Anderson
53caaab3b7
[JAEGER] Fixed some math operations remating from unsynced addresses (bug 589714, r=dmandelin).
2010-08-24 21:00:32 -04:00
David Anderson
521e364261
[JAEGER] Another semi-rewrite of LOCALINC for edge cases (bug 585408).
2010-08-08 19:26:38 -07:00
David Anderson
604f0a0760
[JAEGER] Fixed bugs when LOCALINC and friends took slow paths (bug 584607, r=sstangl).
2010-08-06 18:44:31 -07:00
David Anderson
3095481569
[JAEGER] Ensure stack stores are synced for escaping slots or eval code (bug 580884, r=sstangl).
2010-08-04 14:05:19 -07:00
David Anderson
6358aba3e4
[JAEGER] Fixed uncopy() breaking copy invariants (bug 583684, r=sstangl).
2010-08-02 15:52:49 -07:00
Sean Stangl
c8ae808f02
[JAEGER] MonoIC support for x86_64. b=578245, r=dvander.
2010-08-01 18:31:50 -07:00
David Anderson
cdef4d6be0
[JAEGER] Fixed assumption about copies which is broken by let expressions (bug 582897).
2010-07-29 11:48:47 -07:00
David Anderson
d1269a00d4
[JAEGER] Improve performance of loading doubles (bug 582152).
2010-07-28 14:32:39 -07:00
Brian Hackett
e56731d546
JM: OOL fast path for setting array holes, bug 580355
2010-07-28 13:07:26 -07:00
Sean Stangl
dd89f414c2
[JAEGER] Introduce JS_NUNBOX32, JS_PUNBOX64 defines. r=dvander.
2010-07-27 18:26:57 -07:00
Andrew Drake
fecdab5ba0
[JAEGER] Fix segfault adding upvars when eval is present. r=dvander, b=582279
2010-07-27 13:41:42 -07:00
David Mandelin
45c205f566
Bug 582084: make sure int tags get written on fast path of globalinc, r=dvander
2010-07-26 17:59:40 -07:00
David Anderson
a8c9f0015c
[JAEGER] Fixed type propagation with LOCALINC (bug 581800).
2010-07-25 16:29:15 -07:00
David Anderson
56f2d5583c
[JAEGER] Removed over-zealous assert (bug 580703).
2010-07-24 20:22:27 -07:00
Sean Stangl
6a4816128b
[JAEGER] 64-bit MethodJIT support. b=578245, r=dvander.
2010-07-23 14:46:13 -07:00
David Anderson
26f3429eb7
[JAEGER] Fast-path for MOD with integers (bug 579466).
2010-07-22 23:36:37 -07:00
David Anderson
a872d66e6e
[JAEGER] Keep track of which operations result in numbers.
2010-07-22 17:34:29 -07:00
David Anderson
60ca899930
[JAEGER] Simplify double arithmetic paths.
2010-07-22 17:34:26 -07:00
Sean Stangl
bc4a91ac4d
[JAEGER] Various changes to Assembler.h. r=dvander, b=580749.
...
Remove storeData32/loadData32; replace with store32(), storePayload(), etc.
Use JSValueType instead of JSValueTag, since 64-bit will have a different tag representation.
2010-07-21 15:03:16 -07:00
Chris Leary
a887840fdf
Bug 578761: PIC for JSOP_GETELEM. (r=dvander)
2010-07-20 21:16:47 -07:00
Sean Stangl
0301a8bf15
[JAEGER] Eliminate redundant guard when lhs and rhs have same backing; (578303, r=dvander).
2010-07-13 02:01:54 -07:00
David Anderson
3487c67a9d
[JAEGER] Fixed bug in JSOP_POS.
2010-07-03 13:13:20 -07:00
Sean Stangl
779d2a3dd0
[JAEGER] Reimplement tempRegForConstant() as copyConstantIntoReg(); (576417, r=dvander).
2010-07-02 11:56:34 -07:00
David Anderson
3d36343449
[JAEGER] Convert FrameState to use types, not tags.
2010-07-01 01:17:42 -07:00
David Anderson
9c55bbcdbc
[JAEGER] Merge from fatval.
2010-06-30 11:46:07 -07:00
David Anderson
2b78519a45
[JAEGER] Fixed JSOP_NEG fast-path trying to load constant type tags.
2010-06-29 13:29:54 -07:00
Chris Leary
21e4248a17
JM: Bug 574697, eagerly calculate |this|. (r=dvander)
2010-06-28 22:24:21 -07:00
David Anderson
d07863b3f3
[JAEGER] Removed unused "weak" parameter on RegState.
2010-06-28 18:43:32 -07:00
David Anderson
4ce6828361
[JAEGER] Update FORLOCAL fast-path for jsid iteration.
2010-06-28 11:49:37 -07:00
Sean Stangl
5c22a54a9e
[JAEGER] Update StubCompiler, FrameState, and Compiler for double arithmetic paths.
2010-06-25 18:21:36 -07:00
David Anderson
714f19d3e3
[JAEGER] Peephole optimize stores away for localinc.
2010-06-25 16:45:21 -07:00
David Anderson
fe3c83d266
[JAEGER] Kill redundant stores of type tags to synced memory on fast-paths.
2010-06-25 11:42:47 -07:00
David Anderson
0a0f76d454
[JAEGER] Update JM2 for fatval merge.
2010-06-24 14:17:08 -07:00
David Anderson
ab63b0c9ce
[JAEGER] Use PICs for PROPINC and friends.
2010-06-23 23:40:38 -07:00
David Mandelin
882030f513
Add extra stack space needed for callprop in methodjit
2010-06-23 18:58:17 -07:00
David Anderson
4e21a7e40e
[JAEGER] Use PIC for instanceof's obj.prototype fetch.
2010-06-22 16:21:21 -07:00
David Anderson
884b494c29
[JAEGER] Re-added Dave Mandelin's polymorphic inline caches for GETPROP (bug 572310).
2010-06-19 21:58:55 -07:00
David Anderson
4d054d48ba
[JAEGER] Don't optimize escaping variables (bug 566022).
2010-06-18 11:07:15 -07:00
David Anderson
863fc7bfde
[JAEGER] Split JSOP_CALL into more decisions, removed primitive-this check on returns.
2010-06-16 15:21:39 -07:00