Commit Graph

82 Commits

Author SHA1 Message Date
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