Commit Graph

15949 Commits

Author SHA1 Message Date
Andreas Gal
075e3f00a6 Add casting for objects and cleanup casting code. 2008-07-05 20:30:11 -07:00
shaver@mozilla.org
501239ca11 let JSOP_GETELEM handle boolean values too 2008-07-05 23:04:42 -04:00
shaver@mozilla.org
26cc9c9e54 Handle boolean lval in SETELEM; now runs access-nsieve unmodified. 2008-07-05 22:39:34 -04:00
Andreas Gal
0245a6ba7c Believe it or not NEG can actually overflow the int32 range, so add an overflow bailout. This will only trap for -0x80000000. 2008-07-05 19:25:38 -07:00
Andreas Gal
54a349ce1f Merge. 2008-07-05 19:18:14 -07:00
Andreas Gal
48e459ba73 Added blacklisting of recording points where we failed to complete a trace (overly aggressive at this point, needs tuning, we want to try several times for each point.) 2008-07-05 19:15:00 -07:00
shaver@mozilla.org
1c4f82c592 Allow hole-filling JSOP_SETELEM to remain on trace. 2008-07-05 21:50:54 -04:00
Andreas Gal
04ae2a44d4 Fixed boolean boxing. 2008-07-05 18:36:40 -07:00
Andreas Gal
cf8e2a555b Added boolean boxing/unboxing code. 2008-07-05 18:34:41 -07:00
Andreas Gal
8ac9e3ca57 Use default parameter in LSH/RSH/URSH to indicate we don't care for the overflow. 2008-07-05 18:18:06 -07:00
Andreas Gal
3ba61e4c01 Added missing jsbuiltins.cpp 2008-07-05 17:29:55 -07:00
Andreas Gal
888d2f9aee Add support for some misc opcodes including binary and arithmetic and/or/not. 2008-07-05 17:26:00 -07:00
Andreas Gal
810d54beac Track trace entry/exit in debug mode and count cycles. 2008-07-05 17:10:58 -07:00
Andreas Gal
19152ffb1f Signal error from the boxing/unboxing using magic cookies since gcc seems to very seriously object to the use of uint64 return values during a fastcall (horribly inefficient code). 2008-07-05 16:28:03 -07:00
Andreas Gal
05c4c4bb27 Help the branch predictor in the builtins. 2008-07-05 15:46:58 -07:00
shaver@mozilla.org
00b1baa734 use FASTCALL for builtins 2008-07-05 17:37:15 -04:00
Andreas Gal
16b463a6cb Style nitpicking. Fix overlong lines. 2008-07-05 14:05:25 -07:00
Andreas Gal
d765c3ead2 Finish SETELEM for int and double values. 2008-07-05 14:00:32 -07:00
Andreas Gal
1e9c9451e0 Merge unboxing code into GETELEM code. 2008-07-05 13:44:48 -07:00
Andreas Gal
503bf13dac Merge. 2008-07-05 11:46:08 -07:00
Andreas Gal
f9981c8870 Added box_int_jsval for the store path. Use only there. 2008-07-05 11:45:53 -07:00
Andreas Gal
ba7e66df92 Code generators to access object slots and native code callouts (builtins) for boxing doubles and ints. Ints have to be boxed through a native code helper on read and write (BoxInt32 and UnboxInt32), because we sometimes have to cast internally to double to store 32-bit values. We don't want a separate trace in this case, so we have to do this inline in a helper. Also a couple of modifications to shaver's code. Always make sure to check types (JSOP_NEG). 2008-07-05 11:35:55 -07:00
Brendan Eich
2e457ec7ab Fix dumb bugs I just committed, use JS_NOT_REACHED. 2008-07-05 11:29:28 -07:00
Brendan Eich
ab0e34e2ae Try to keep 64-bit portability via size_t instead of unsigned, jsuword for uintptr instead of long, etc. 2008-07-05 11:18:26 -07:00
Brendan Eich
e544b391b2 Spacing and comment nits picked while reading. 2008-07-05 10:41:35 -07:00
shaver@mozilla.org
ef07fe09b8 shift ops 2008-07-05 09:59:32 -04:00
shaver@mozilla.org
de59f88d9c Beginning of SETELEM/GETELEM tracing for dense arrays. Needs computed-offset
insLoad before they'll work.
2008-07-05 09:47:59 -04:00
shaver@mozilla.org
f298721bf2 update to isInt 2008-07-05 09:43:00 -04:00
shaver@mozilla.org
13b4f67ef5 merge 2008-07-05 09:34:19 -04:00
shaver@mozilla.org
92e9aa44c0 [mq]: simple-ops 2008-07-05 09:15:33 -04:00
Andreas Gal
2df2214a9e Introduce asInt and asDouble to check for the type of values based on the actual value since some 32-bit integers hide out in doubles. 2008-07-04 23:53:29 -07:00
Andreas Gal
cef5e9becc Make trace-code 32-bit clean and extend interpreter state to carry the current context (cx). The recorder still has to record a 31-bit int path through the loop, but the emitted code is able to stay in the tree even if values bump over to 32-bit ints. 2008-07-04 16:24:42 -07:00
Andreas Gal
e35d351b28 Added support for SET_VAR again. bitwise.js working now. 2008-07-04 15:21:56 -07:00
Andreas Gal
ab1dc289ba Fixed some stack handling and trace activation issues. We can run trace.js again. 2008-07-04 15:07:05 -07:00
Andreas Gal
5e9ca6ef0e Cleanup of stack handling. 2008-07-04 13:23:42 -07:00
Andreas Gal
9b8f5f75a8 Added back support for the instructions required to compile trace.js. 2008-07-04 03:06:18 -07:00
Andreas Gal
1503932551 Properly switch tracer on and off depending on loopEdge and abort signaling from trace recorder recording functions. 2008-07-04 01:10:57 -07:00
Andreas Gal
efb72df02a Re-integrate trace recording and trace activation infrastructure. Model more closely after Tamarin. 2008-07-04 00:51:30 -07:00
Andreas Gal
731614bfe9 Create a stub for each opcode in TraceRecorder and invoke them from the stubs that are pointed to by the recorder dispatch-table. 2008-07-03 23:57:57 -07:00
Andreas Gal
1d27756235 Extend dispatch table to include 256 extra cases for traceing. 2008-07-03 22:28:01 -07:00
Andreas Gal
62d0c7bbfb Switch back to mozilla-central jsinter.cpp. Lets try a different approach to attach the tracer to the interpreter. 2008-07-03 22:08:13 -07:00
Andreas Gal
ea9279b6d0 Sync with mozilla-central. 2008-07-03 21:45:09 -07:00
Andreas Gal
d263173a72 Avoid name clash between nanojit and jsinter.cpp (full patch queued up for tamarin). 2008-07-03 21:39:34 -07:00
Andreas Gal
9a1bbdcdc6 Fix unnecessary type prefix (reported by bc, doesn't pass gcc 4.2.3) 2008-07-03 17:02:19 -07:00
Takeshi Kurosawa ext:(%2C%20Eric%20Butler%20%3Cebutler%40mozilla.com%3E)
e6e9681ac7 Bug 442113 - Canvas text size depends on browser text zoom r=vlad 2008-07-03 15:02:50 -07:00
Daniel Holbert
c1057f3265 comment-only typo fix: delcaration -> declaration 2008-07-03 14:28:39 -07:00
Shawn Wilsher
e6dbf1fb43 Bug 443493 – Unit test for Bug 331215 fails rather frequently on Mozilla2 builds
Test uses the thread manager to place a function on the event queue of the main
thread instead of using a timeout.
r=mconnor
2008-07-03 16:46:04 -04:00
Gavin Sharp
10ec554485 Bug 441120 / bug 221445: don't split URLs on '|' when passed on the command line, r=mconnor, r=dveditz 2008-07-03 16:30:24 -04:00
Dietrich Ayala
14b57edcf4 Bug 430514 - Rename new search "New Query" default name to "New Search" (r=mano) 2008-07-03 12:04:38 -07:00
Dietrich Ayala
bf88c3133e Bug 438744 - Folders with non uniform characters (accents, Chinese, Japanese, etc) in their names do not import over from Safari. (r=mano) 2008-07-03 11:46:52 -07:00