Commit Graph

9490 Commits

Author SHA1 Message Date
Andreas Gal
be035f8008 Allow reading reserved slots without locking if we know its safe to do so (570404, r=brendan). 2010-06-07 21:35:58 -04:00
Luke Wagner
0d5dd30ea8 Firefox builds 2010-06-07 18:21:51 -07:00
David Anderson
7ce213d12c [JAEGER] Fixed display not being adjusted correctly. 2010-06-07 17:21:40 -07:00
Luke Wagner
f032df96b4 Bug 565157 - typed JS_AddRoot (r=igor) 2010-06-07 17:05:02 -07:00
David Anderson
b884c72a44 Merge. 2010-06-07 16:45:14 -07:00
David Anderson
0acdab7b8b [JAEGER] Added JSOP_CALLLOCAL. 2010-06-07 16:44:25 -07:00
Sean Stangl
4dcf214e5c [JAEGER] Move redundant code to jsop_getprop_slow(); r=dvander. 2010-06-07 16:43:45 -07:00
Sean Stangl
9592877ac7 [JAEGER] Implement JSOP_SETPROP, JSOP_GETPROP, and associated ops; r=dvander. 2010-06-07 16:32:26 -07:00
Luke Wagner
a8883b8520 Merge 2010-06-07 13:58:13 -07:00
Luke Wagner
9814243213 xpconnect builds 2010-06-07 13:57:40 -07:00
David Anderson
5ccdb8922d Bug 556569 - Trace shallow recursion more robustly. r=jorendorff. 2010-06-07 12:47:24 -05:00
Igor Bukanov
24dee0ab53 bug 557538 - custom GC chunk allocation. r=gal,jorendorff 2010-06-07 11:17:15 +02:00
Nicholas Nethercote
3744861727 Update nanojit-import-rev stamp. 2010-06-06 20:27:01 -07:00
Nicholas Nethercote
e2a11770ff Fix typo in patch for bug 527512, and add a missing case. r=gal.
--HG--
extra : convert_revision : eb43593410b935717be223a37dec993a30472073
2010-06-06 20:22:48 -07:00
David Anderson
64882231ed [JAEGER] Added JSOP_CONCATN. 2010-06-06 00:49:46 -07:00
David Anderson
54b2c073e5 [JAEGER] Added JSOP_STRICTEQ, JSOP_STRICTNE. 2010-06-06 00:41:57 -07:00
David Anderson
1177477dd0 [JAEGER] Added JSOP_TYPEOF. 2010-06-06 00:34:14 -07:00
David Anderson
4fa75d61e6 [JAEGER] Added JSOP_FORLOCAL, JSOP_MOREITER, JSOP_ENDITER. 2010-06-05 23:54:56 -07:00
David Anderson
ebd08a0fb3 [JAEGER] Added JSOP_ITER. 2010-06-05 21:42:25 -07:00
David Anderson
50d4d4eb78 [JAEGER] Added JSOP_INITPROP. 2010-06-05 21:35:07 -07:00
David Anderson
5af47cbec1 [JAEGER] Added JSOP_NOT. 2010-06-05 21:20:34 -07:00
David Anderson
6fd3673dd5 [JAEGER] Added JSOP_OR, JSOP_AND. 2010-06-05 19:25:54 -07:00
David Anderson
71219c36fb [JAEGER] Added JSOP_INCNAME,DECNAME,NAMEINC,NAMEDEC. 2010-06-05 19:06:39 -07:00
David Anderson
15245f0d9a [JAEGER] Fixed bug in SetName handling. 2010-06-05 18:24:03 -07:00
David Anderson
ebc66018d0 [JAEGER] Added JSOP_LAMBDA. 2010-06-05 18:17:41 -07:00
David Anderson
5eddc9e757 [JAEGER] Added JSOP_REGEXP. 2010-06-05 18:08:26 -07:00
David Anderson
58c8662b7b [JAEGER] Added JSOP_SETARG. 2010-06-05 18:01:06 -07:00
David Anderson
dd8e9d257f [JAEGER] Added JSOP_DEFLOCALFUN. 2010-06-05 17:56:28 -07:00
David Anderson
6caf036c24 [JAEGER] Added JSOP_GETUPVAR, JSOP_CALLUPVAR. 2010-06-05 17:40:42 -07:00
David Anderson
646a599539 [JAEGER] Added JSOP_URSH. 2010-06-05 17:26:19 -07:00
David Anderson
0fd1118fae [JAEGER] Added JSOP_BITNOT. 2010-06-05 17:21:56 -07:00
David Anderson
50f045e244 [JAEGER] Added JSOP_INITELEM. 2010-06-05 16:45:48 -07:00
David Anderson
8bb2f61b44 [JAEGER] Quell GCC warning. 2010-06-05 16:32:57 -07:00
David Anderson
cc13ff932c [JAEGER] Added JSOP_BITOR. 2010-06-05 16:32:12 -07:00
David Anderson
33f5c65fe2 [JAEGER] Fixed register allocation bug with copies. 2010-06-05 16:32:05 -07:00
David Anderson
e5e8f01db0 [JAEGER] Added JSOP_NEWINIT, JSOP_ENDINIT. 2010-06-05 16:08:27 -07:00
David Anderson
7c6f4d702b [JAEGER] Added JSOP_BITXOR. 2010-06-05 15:27:56 -07:00
David Anderson
15bafd4e40 [JAEGER] Added JSOP_OBJTOSTR. 2010-06-05 15:20:36 -07:00
David Anderson
72c6ddb69d [JAEGER] Added JSOP_GETDSLOT, JSOP_CALLDSLOT. 2010-06-05 14:48:26 -07:00
David Anderson
6895923093 [JAEGER] Added JSOP_DUP2. 2010-06-05 14:38:10 -07:00
David Anderson
b5f91c1f7c [JAEGER] Added JSOP_DUP. 2010-06-05 14:32:53 -07:00
David Anderson
1884924c8f [JAEGER] Added JSOP_NEG. 2010-06-05 14:26:00 -07:00
David Anderson
e0f4979989 [JAEGER] Fixed warnings. 2010-06-05 12:27:50 -07:00
David Anderson
907f512ff2 [JAEGER] Workaround for register exhaustion on safe point spills. 2010-06-05 03:52:00 -07:00
David Anderson
abffff4766 [JAEGER] Merge from fatval. 2010-06-05 03:35:52 -07:00
David Anderson
24b06aa25a Unbroke opt build. 2010-06-05 03:34:53 -07:00
David Anderson
b82e2162a8 [JAEGER] Dual mapping between tracker and FE stack to hold copy invariants better and faster. 2010-06-05 03:26:31 -07:00
David Anderson
4db1dbc3d7 [JAEGER] Removed unused member variable. 2010-06-05 01:59:34 -07:00
David Anderson
7b5472464b [JAEGER] Fixed stupid typo. 2010-06-05 01:55:50 -07:00
David Anderson
4fb3d04534 [JAEGER] Track FEs instead of indexes - preparation for more regalloc fixes. 2010-06-05 00:31:59 -07:00
David Anderson
f95234d329 [JAEGER] Added JSOP_THIS. 2010-06-04 23:14:20 -07:00
David Anderson
0e663fe6c0 [JAEGER] Added JSOP_NEWARRAY. 2010-06-04 22:38:54 -07:00
David Anderson
8caee42f61 [JAEGER] Merge from fatval branch. 2010-06-04 22:21:00 -07:00
David Anderson
1ee067adac Fixed js_Disassemble1 decoding JOF_ATOM+JSOP_DOUBLE as astom (bug 570285). 2010-06-04 22:19:53 -07:00
David Anderson
b3d4470682 [JAEGER] Fixed build. 2010-06-04 22:18:38 -07:00
David Anderson
87d142550e [JAEGER] Merge from fatval branch. 2010-06-04 22:11:53 -07:00
David Anderson
b23b0f93d4 [JAEGER] Added JSOP_NEW. 2010-06-04 20:02:21 -07:00
David Anderson
69cdfac1b8 [JAEGER] Fixed build. 2010-06-04 19:33:16 -07:00
David Anderson
573bea6910 Merge. 2010-06-04 19:32:38 -07:00
David Anderson
ccfc1a5aa6 [JAEGER] Added JSOP_ADD,SUB,MUL,DIV,MOD. 2010-06-04 19:31:46 -07:00
David Anderson
9dd620f1d5 [JAEGER] Implement SETLOCAL when copied entries are involved. 2010-06-04 19:31:44 -07:00
David Anderson
8d37f58238 [JAEGER] Added test case for eq+ifeq fusing. 2010-06-04 19:31:28 -07:00
David Anderson
7c056b3f2f [JAEGER] Make sure to flip EQ/NE test when fusing with IFEQ. 2010-06-04 19:29:43 -07:00
Luke Wagner
7b81a5dc24 Make JSHasInstanceOp and JSEqualityOp take jsval. Get a lot of xpconnect compiling 2010-06-04 16:55:08 -07:00
Sean Stangl
64a6b3d9c7 [JAEGER] Change SetElem,GetElem to use ValueToObject(); re=dvander. 2010-06-04 16:47:46 -07:00
Sean Stangl
3293d7ad4d [JAEGER] Implement JSOP_GETELEM, JSOP_SETELEM; r=dvander. 2010-06-04 15:54:19 -07:00
David Anderson
46c6541654 Backed out changeset 820c2007cf35 2010-06-04 15:13:11 -07:00
David Anderson
7023c8aa22 [JAEGER] hot-fix for regalloc bug - incorrect, proper fix forthcoming. 2010-06-04 15:04:32 -07:00
William Maddox
06858e0f9c Bug 555345 - Histogram profiling macros for JIT-generated code (r=rreitmai+)
This patch adds wrapper macros _jhprof_init, _jhnprof_init, and _jhprof to
facilitate histogram profiling from JIT-generated code.

--HG--
extra : convert_revision : 939ade8f3ee9716faaedc2b2a0cf986b5010003f
2010-06-04 14:31:25 -07:00
Jason Orendorff
5f5deee89d Bug 556277 - Compute this eagerly in more cases. r=brendan. Second landing. 2010-06-04 00:34:57 -07:00
David Anderson
f38a5d5fd1 [JAEGER] Added JSOP_IFEQ, JSOP_IFNE. 2010-06-03 23:16:47 -07:00
David Anderson
3dff010f52 [JAEGER] Added JSOP_LSH, JSOP_RSH. 2010-06-03 23:05:32 -07:00
David Anderson
8e4fe7b3e9 [JAEGER] Merge from fatval branch. 2010-06-03 23:04:57 -07:00
Sean Stangl
6833c03c42 [JAEGER] Fix a missed path in InlineEqualityOp(); r=dvander. 2010-06-03 22:33:24 -07:00
Sean Stangl
26f684c3d7 [JAEGER] Implement JSOP_EQ, JSOP_NE; r=dvander 2010-06-03 21:29:03 -07:00
Luke Wagner
8846bb56a4 Fix failing reftests. Align consts stored in scripts 2010-06-03 18:22:37 -07:00
David Anderson
ff56c35cb8 [JAEGER] Added JSOP_CALLARG, workaround for nmap asserts. 2010-06-03 16:16:53 -07:00
William Maddox
a577524f6a Bug 555345 - Add profiling capability for JIT-generated code (vprof changes only) (r=rreitmai+)
An earlier patch to tamarin-redux included vprof patches as well as a coordinated set of changes
to other files in TR.  The vprof directory is imported from nanojit-central, and the vprof changes
were overwritten.  This patch separates the initialization of new profile records from the logging
of data therein, which facilitates the use of the profiling infrastructure from JIT-generated code.

--HG--
extra : convert_revision : 10b865fa5d413277c2e11c211302f75d87029f06
2010-06-03 16:02:28 -07:00
Andrew Drake
0691d6d766 [JAEGER] Ensure nmap has a mapping entry for all ops, not just safepoints. r=dvander 2010-06-03 15:50:23 -07:00
David Anderson
45c0e609d2 [JAEGER] Added JSOP_VOID. 2010-06-03 15:27:04 -07:00
David Anderson
74afc2ba2e [JAEGER] Added support for JSOP_NULL. 2010-06-03 15:08:21 -07:00
David Anderson
3b0c7241d4 [JAEGER] Attempt to JIT inline calls in the interpreter. 2010-06-03 14:28:22 -07:00
David Anderson
27f87fcf42 [JAEGER] Fixed assert in FrameState merging. 2010-06-03 13:59:19 -07:00
Steven Johnson
38b8e72eb0 Bug 527512 - ExprFilter missing trivial optimizations for ugt, ult (r=edwsmith,nnethercote)
--HG--
extra : convert_revision : 9bdc25ecdb1b5b3b6a81705df3ae573b812bc990
2010-06-03 10:35:26 -07:00
Luke Wagner
8f6c06b148 Remove jsboxedword, change jsid to be a jsval 2010-06-02 19:09:04 -07:00
David Anderson
0c9f982560 [JAEGER] Slight improvement to register movement in sync path. 2010-06-02 19:07:58 -07:00
David Anderson
e8bd3a6f72 Merge. 2010-06-02 18:59:23 -07:00
David Anderson
d203d9aee3 [JAEGER] Allocate registers for local variables (GET/SETLOCAL). 2010-06-02 18:57:52 -07:00
David Anderson
a56d7ce464 [JAEGER] Fixed bug in comparison stub calls. 2010-06-02 16:48:41 -07:00
Andrew Drake
eef45a5ee7 [JAEGER] Fix nmap not being saved in JSScript properly r=dvander 2010-06-02 16:45:45 -07:00
David Anderson
b4b3c306b4 [JAEGER] Improved last test case. 2010-06-02 15:58:25 -07:00
David Anderson
b2c052e23b [JAEGER] Fixed crash where tail of slow fused compare op ran overboard. 2010-06-02 15:57:36 -07:00
David Anderson
50edbde73a [JAEGER] Added JSOP_TRUE, JSOP_FALSE. 2010-06-02 15:33:36 -07:00
David Anderson
03ba62a0cc [JAEGER] Fixed JSOP_SETNAME not ordering the stack correctly. 2010-06-02 15:25:53 -07:00
David Anderson
37e94e6030 [JAEGER] Fixed JSOP_STOP clobbering fp->rval. 2010-06-02 14:25:30 -07:00
Sean Stangl
29eb2211f9 [JAEGER] Handle JSOP_POPV; re=dvander. 2010-06-02 14:11:46 -07:00
David Anderson
e30e08a407 [JAEGER] Re-added script->nmap creation. 2010-06-02 02:09:17 -07:00
David Anderson
3868a5a89c [JAEGER] Quell GCC warnings about trailing commas. 2010-06-02 02:08:26 -07:00
Leon Sha
4e076c0bf0 http://www.dancertheband.com/ does not work correct with flash player 10.1 beta for solaris sparc. r=edwsmith
--HG--
extra : convert_revision : ccfc1e56c6f7dcf68719329cf1615aa5bfc4e3a5
2010-06-02 13:13:24 +08:00
Sean Stangl
9fdf7ec98f Fix build in 41977:15bf5f68aa25: use correct defines. r=dvander 2010-06-01 21:42:45 -07:00
David Mandelin
7dddedeff0 Makefile changes to force pointers to 32 bits on OSX--this is just a stopgap for testing and shell development 2010-06-01 19:06:54 -07:00
David Mandelin
e7faa0e1c8 Bug 569441: Update Nitro assembler to SVN rev 60501 + our changes, no_r=me 2010-06-01 18:09:55 -07:00
David Mandelin
7bdb82c9d9 [JAEGER] Windows build fixes 2010-06-01 18:06:46 -07:00
David Anderson
9c9903f6dc [JAEGER] Added JSOP_GETARG. 2010-06-01 11:12:50 -07:00
David Anderson
6e6c481f29 [JAEGER] Fixed build on Mac. 2010-05-31 23:40:14 -07:00
David Anderson
25c5fc6b60 [JAEGER] Fixed opt build. 2010-05-31 23:03:42 -07:00
David Anderson
18209b07ab [JAEGER] Added JSOP_LT,LE,GT,GE,STRING with fast-paths. 2010-05-31 22:44:00 -07:00
David Anderson
e60d435fae [JAEGER] Enhanced constant-folding of rel ops. 2010-05-31 03:19:46 -07:00
David Anderson
3cef63ff88 [JAEGER] Constant fold LT,LE,GT,GE. 2010-05-31 02:17:05 -07:00
David Anderson
fe92fc9287 [JAEGER] Fixed bug in stubs::Name(). 2010-05-31 00:59:45 -07:00
David Anderson
8ddd668df0 [JAEGER] Fixed JSOP_STOP w/ inline calls. 2010-05-31 00:41:31 -07:00
David Anderson
8b3a220284 [JAEGER] Fixed bug where constants weren't unsynced on push. 2010-05-31 00:03:31 -07:00
David Anderson
2f59b29548 [JAEGER] Added JSOP_DEFFUN, JSOP_NOP. 2010-05-30 23:51:32 -07:00
David Anderson
5bdf03d38d [JAEGER] Implemented register eviction algorithm. 2010-05-30 23:37:04 -07:00
David Anderson
c4bb991d3b [JAEGER] Implemented CALL. 2010-05-30 23:18:39 -07:00
David Anderson
fa4bfd26db [JAEGER] Added JSOP_CALLNAME. 2010-05-30 22:46:39 -07:00
David Anderson
945f036f29 [JAEGER] Fixed pointless assert. 2010-05-30 20:19:25 -07:00
David Anderson
ff19a371e5 [JAEGER] Fixed mem corruption bug. 2010-05-30 20:16:10 -07:00
David Anderson
c8844c4d54 [JAEGER] Build fixes. 2010-05-30 20:13:07 -07:00
David Anderson
dff194f865 [JAEGER] Merge from fatval. 2010-05-30 20:07:48 -07:00
David Anderson
403f03ea8f [JAEGER] Fixed bugs in allocating temp registers for FEs. 2010-05-30 19:57:01 -07:00
David Anderson
bf470f73e5 [JAEGER] Added JSOP_GLOBALINC, JSOP_GLOBALDEC, JSOP_INCGLOBAL, JSOP_DECGLOBAL. 2010-05-30 19:44:29 -07:00
David Anderson
aad4b0b970 [JAEGER] Common function for computing obj slot refs; improved regalloc on GETGLOBAL. 2010-05-30 14:37:18 -07:00
David Anderson
a822a2418e [JAEGER] Fixed bug in slow path side exit generation. 2010-05-30 01:10:02 -07:00
David Anderson
536a5700bd [JAEGER] Finished initial stub-call mechanism, added BITAND. 2010-05-30 01:01:41 -07:00
David Anderson
299e5d9436 [JAEGER] Stub call exits now work. 2010-05-29 23:33:51 -07:00
David Anderson
d8f2a30535 [JAEGER] Fix bugs, inline FrameState.h.
--HG--
rename : js/src/methodjit/FrameState.cpp => js/src/methodjit/FrameState-inl.h
2010-05-29 22:43:38 -07:00
David Anderson
14f8391316 [JAEGER] New FrameState.
--HG--
rename : js/src/methodjit/nunbox/FrameEntry.h => js/src/methodjit/FrameEntry.h
rename : js/src/methodjit/nunbox/FrameState.cpp => js/src/methodjit/FrameState.cpp
rename : js/src/methodjit/nunbox/FrameState.h => js/src/methodjit/FrameState.h
2010-05-29 21:48:13 -07:00
David Mandelin
9d3b145d90 Move the unit string tables to 32-bit address space for x64. This works on Windows but may need different X64 macrology elsewhere 2010-05-28 15:28:48 -07:00
David Mandelin
0c6dd6c6e2 Set up alloc of 32-bit-addressed gcchunks for win 64 2010-05-28 14:41:42 -07:00
David Mandelin
0c48e65da3 Build error fixes for win64 2010-05-28 14:04:29 -07:00
David Anderson
890460f392 [JAEGER] Fixed opt build. 2010-05-28 11:11:24 -07:00
David Anderson
f0554c5969 [JAEGER] Added JSOP_NAME. 2010-05-28 00:54:01 -07:00
David Anderson
8a7b8a54b3 [JAEGER] Fixed bug in syncing doubles. 2010-05-28 00:42:40 -07:00
David Anderson
0c73bb07e6 [JAEGER] Jumps in-between the slow and fast paths now work. 2010-05-28 00:30:35 -07:00
David Anderson
597c9c7210 [JAEGER] Somehow, the assembler was never checked in. WHOOOOOPSSSSSSS 2010-05-28 00:29:52 -07:00
David Anderson
e3ed2f13e8 [JAEGER] Start filling out the register allocator and stub call mechanism. 2010-05-27 21:26:19 -07:00
William Maddox
48541b0117 Support arithmetic with branch on overflow on MIPS -- bug 560926 (r=rreitmai+)
Adds support for MIPS target lacking in earlier patch.
Bug 560926 - Add support for arithmetic with branch on overflow
We simply extend the existing logic for exit-on-overflow in the
manner done for other targets.  There appear to other issues
with oveflow detection in general that are not dealt with here.

--HG--
extra : convert_revision : 3a62ee8cc7d6caf63cbd594f71814c8e8f3d4f7a
2010-05-27 18:00:45 -07:00
William Maddox
7cfb42d6ca Fix missed renaming in NativeMIPS.cpp in patch for bug 560926 (r=rreitmai+)
Bug 560926 - Add support for arithmetic with branch on overflow

--HG--
extra : convert_revision : 8c6a61c935172f56eb7c660b476a5516cd3f04ab
2010-05-27 12:53:35 -07:00
Rick Reitmaier
ada62b6b46 Fix winmo macro madness breakage
Extra parenthesis needed in order to correctly resolve macros;
  NativeARM.cpp(2040) : error C2105: '--' needs l-value

--HG--
extra : convert_revision : 6f625518afb60a49717b27ba482ace08309cff12
2010-05-27 11:29:47 -07:00
lw@mozilla.com
7b52bb9eca Fixes/hacks to get working on Linux x64 2010-05-26 22:35:39 -07:00
Rick Reitmaier
4e416a5a6b Bug 568393 - msvc 2008 compiler generates bad code for CallInfo static initializer (r+wmaddox)
ugh

--HG--
extra : convert_revision : f7c07b8ca96fc2ef1179171f05e69b841ac2865f
2010-05-26 18:02:31 -07:00
David Anderson
035b69b6f3 [JAEGER] Added common call functionality to BaseAssembler. 2010-05-26 17:49:34 -07:00
William Maddox
f42400812e Bug 560639 - Reinstate CodeAlloc::size(const CodeList*) recently removed as "dead" (r=edwsmith+ nnethercote+)
--HG--
extra : convert_revision : aec5028a49e90c4be18de667a2807896e3b689ad
2010-05-26 17:29:16 -07:00
David Anderson
1faf352c4e [JAEGER] Sub-classed mjit::Assembler from new mjit::BaseAssembler. 2010-05-26 17:18:42 -07:00
David Anderson
af1490ea97 [JAEGER] Start of stub-call compiler; sub-classed MacroAssembler into mjit::Assembler.
--HG--
rename : js/src/methodjit/Stubs.cpp => js/src/methodjit/StubCalls.cpp
rename : js/src/methodjit/Stubs.h => js/src/methodjit/StubCalls.h
2010-05-26 17:08:08 -07:00
Luke Wagner
824169c8ae Merge 2010-05-26 16:39:20 -07:00
Luke Wagner
f7242c4d3f [mq]: Refactor value logic for better reuse 2010-05-26 16:36:47 -07:00
David Mandelin
d9d407e9e0 Fix build for js shell 2010-05-26 15:35:52 -07:00
David Mandelin
779cb751a0 Fix ctypes build 2010-05-26 15:29:48 -07:00