Commit Graph

43621 Commits

Author SHA1 Message Date
David Anderson
8aba3afc06 [JAEGER] Fast-paths for STRICTEQ,NE when undefined or null are used. 2010-06-17 00:29:28 -07:00
David Anderson
335d797ee4 [JAEGER] Add fast-path for JSOP_THIS. 2010-06-16 18:15:23 -07:00
David Anderson
7ab3717436 [JAEGER] Added stub call profiling. 2010-06-16 17:53:35 -07:00
Sean Stangl
e38df23094 [JAEGER] Merge. 2010-06-16 15:33:21 -07:00
Sean Stangl
ce760eead5 [JAEGER] Define temporary FPRegisters.
Defines FPRegisters::First and FPRegisters::Second,
temporary FPRegisters that are always synced to memory.

This will hopefully eventually be obsoleted by having
a FPRegister allocator, once FrameState changes are done.
2010-06-16 15:32:30 -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
Sean Stangl
aafbf3565f [JAEGER] Implement x86/x86_64 xorDouble(); (571743, r=dvander). 2010-06-16 10:47:42 -07:00
David Anderson
9e532246ad [JAEGER] Merge. 2010-06-16 01:16:17 -07:00
David Anderson
bc20a29586 [JAEGER] Inline scripted returns. 2010-06-16 01:16:07 -07:00
Sean Stangl
fb862c18e6 [JAEGER] Rename some functions to make namespace for FPRegisters; (572202, r=dvander). 2010-06-15 18:24:31 -07:00
David Anderson
5285f49ef5 [JAEGER] Fixed memory corruption bug found by Gary Kwong. 2010-06-15 18:23:16 -07:00
Sean Stangl
a6ef9f95cc [JAEGER] Implement integer fast path for multiplication; (572081, r=dvander).
ARM multiplication always uses the slow path for now.
2010-06-15 10:46:01 -07:00
David Anderson
a552b1c8e7 [JAEGER] Added fast-path for JSOP_GETELEM. 2010-06-15 03:46:44 -07:00
Sean Stangl
3ad293a3f4 [JAEGER] Fast paths for integer addition, subtraction; (572081, r=dvander). 2010-06-15 03:16:30 -07:00
Sean Stangl
9e77669f47 [JAEGER] testDouble() should emit an unsigned comparison. 2010-06-15 02:46:56 -07:00
Sean Stangl
00de27cae9 [JAEGER] Fix BITOR, BITXOR. 2010-06-15 02:42:08 -07:00
David Anderson
003df04dec [JAEGER] Rewrite state reification for side exits. 2010-06-15 01:40:39 -07:00
David Anderson
a0047931d5 [JAEGER] Added fast-path for JSOP_SETELEM. 2010-06-15 01:40:36 -07:00
Andrew Drake
e0cf7c0a56 Merge. 2010-06-14 14:03:53 -07:00
David Anderson
e260a83f6c [JAEGER] Fixed build. 2010-06-14 13:44:06 -07:00
David Anderson
750be487c8 [JAEGER] Merge. 2010-06-14 13:36:20 -07:00
David Anderson
bc2301898a [JAEGER] Merge. 2010-06-14 13:36:05 -07:00
David Anderson
6ce58480af [JAEGER] Added monomorphic inline caches for SETGNAME. 2010-06-14 13:35:47 -07:00
Andrew Drake
53ecdbb058 [JAEGER] Fix --disable-methodjit build, rs=dmandelin 2010-06-14 13:33:19 -07:00
Sean Stangl
22449ee4d8 [JAEGER] Fix backwards comparison on masm.testDouble(). 2010-06-14 12:56:19 -07:00
David Anderson
56a7c58d38 [JAEGER] Merge. 2010-06-12 19:16:33 -07:00
Sean Stangl
2f941c5f22 [JAEGER] Rename FpReg to JSFrameReg; r=dvander. 2010-06-12 19:11:00 -07:00
David Anderson
297eb1af31 [JAEGER] Added monomorphic inline cache for reads of unbound globals. 2010-06-12 19:00:30 -07:00
David Anderson
82d98ad449 [JAEGER] Predict unbound names as being on the global object (bug 564949). 2010-06-12 19:00:27 -07:00
Sean Stangl
b616a53aee [JAEGER] Define FPRegisters struct; r=dvander. 2010-06-12 18:37:34 -07:00
Sean Stangl
2a5a91c2c0 [JAEGER] Rename alloc() to allocReg(); r=dvander.
This patch is in preparation for making a distinction between
registers and floating-point registers for double fastpaths.
2010-06-12 18:26:36 -07:00
Sean Stangl
8ff57facfa [JAEGER] Use frame.testInt32() instead of masm.testInt32(); r=dvander. 2010-06-11 22:07:10 -07:00
Sean Stangl
1662a83587 [JAEGER] Implement testDouble(); r=dvander. 2010-06-11 21:27:56 -07:00
Sean Stangl
3751e1ceaf [JAEGER] Permit FrameState::copyData() with copied FrameEntries; r=dvander. 2010-06-11 21:27:52 -07:00
David Anderson
7b6d3db650 [JAEGER] Merge. 2010-06-11 14:11:04 -07:00
David Anderson
b79115e765 [JAEGER] Optimize how atoms are passed to NAME, CALLNAME, and SETNAME. 2010-06-11 14:10:43 -07:00
Andrew Drake
a25e9507f4 [JAEGER] Fix Win32 build. r=dvander 2010-06-11 11:24:39 -07:00
David Anderson
971e66892c [JAEGER] Statically bind some global functions (bug 562729, r=brendan). 2010-06-10 23:43:14 -07:00
David Anderson
22bcf9d6e7 [JAEGER] Reset JIT properly. 2010-06-10 23:42:44 -07:00
David Anderson
d6ac5397a1 [JAEGER] Don't call into JIT while recording. 2010-06-10 23:42:35 -07:00
David Anderson
3bbb12b82b [JAEGER] Added JSOP_ELEMINC,ELEMDEC,INCELEM,DECELEM. 2010-06-10 23:10:15 -07:00
David Anderson
659861b518 [JAEGER] Enable regex JIT with JSOPTION_METHODJIT. 2010-06-10 22:23:13 -07:00
David Anderson
f6b0dbf8c8 [JAEGER] Fix build. 2010-06-10 22:20:30 -07:00
David Anderson
a2bfe74bbb [JAEGER] Merge from fatval branch. 2010-06-10 21:58:13 -07:00
David Anderson
20b5f6469a [JAEGER] Added JSOP_LOCALINC,LOCALDEC,INCLOCAL,DECLOCAL. 2010-06-10 20:08:17 -07:00
David Anderson
df8cd25dd9 [JAEGER] Implemented re-loads of copies while syncing in slow paths. 2010-06-10 19:17:09 -07:00
Luke Wagner
0bed26950b Merge 2010-06-10 18:40:28 -07:00
Luke Wagner
4e5568b9ab nsScriptSecurityManager should not be casting jsval to void* 2010-06-10 18:36:42 -07:00
David Anderson
ee80a9426c [JAEGER] Added JSOP_SETRVAL, JSOP_RETRVAL. 2010-06-10 17:30:00 -07:00
David Anderson
aa81593c46 [JAEGER] Try to find unsynced registers to perform copies in side exits. 2010-06-10 17:29:58 -07:00