Commit Graph

2148 Commits

Author SHA1 Message Date
Andreas Gal
3e39ec9d3b Print meaningful filename/line-number info for trace entry/exit. 2008-07-11 13:57:16 -07:00
Andreas Gal
8c6dbda691 Report the source location when recording a trace. 2008-07-11 13:45:38 -07:00
Andreas Gal
b222836a73 Don't demote u2f conversions and sink the type cast into the side exit type map, because this loses the sign bit for unsigned values. We could fix this by adding an explicit unsigned type to the map, but for now I think we should stick to int/double only since there is the risk of fanning out trees. Crypto doesn't seem to use ush all that much so we should be ok performance-wise. 2008-07-11 13:18:29 -07:00
shaver@mozilla.org
5b91021cd9 Windows cares a lot more about where FASTCALL is; such a sensitive platform 2008-07-11 11:40:07 -04:00
shaver@mozilla.org
9122a6712f begone, cat nspr/Version error noise 2008-07-11 11:20:44 -04:00
shaver@mozilla.org
492f8af02e set some more config bits for Windows, mostly blindly 2008-07-11 11:02:14 -04:00
shaver@mozilla.org
179d15ca7b turn on all the shift tests, and find a bug with it! 2008-07-11 10:50:57 -04:00
Andreas Gal
25951074bc Brendan fixed global variable access in non-top level code so re-enable that in trace-test.js. We pass all of shaver's trace torture tests. 2008-07-11 00:53:06 -07:00
Andreas Gal
cd0b213cec Poking around in the arm code, trying to make it not die miserabily with BUILD_OPT=1. 2008-07-11 00:46:44 -07:00
Andreas Gal
3f31810cee Still trying to get the ARM register updating right. 2008-07-11 00:31:48 -07:00
Andreas Gal
5d93de0225 Trying to make arm work. Flying blind here. 2008-07-10 22:35:06 -07:00
Andreas Gal
bde4b2e588 Adjust sp/ip for ARM. Very useful when trying to run on ARM. 2008-07-10 22:29:06 -07:00
shaver@mozilla.org
6bb689e6c3 some ARM stuff 2008-07-11 01:27:06 -04:00
Andreas Gal
fe9354b377 Merge (no, really, can someone teach Mercurial to not do this?). 2008-07-10 22:12:04 -07:00
Andreas Gal
41ded9b128 Output the value if we can't enter a trace because of a type mismatch. 2008-07-10 22:10:02 -07:00
Brendan Eich
a17263a036 1. Fix !JS_THREADED_INTERP bugs in BRANCH and recording switch case generation.
2. Rename TraceRecorder op methods to record_JSOP_xxx to avoid shadowing JSOP_*
   enumerators used inside jsopcode.h macros -- death to ::JSOP_*!
3. Added atoms TraceRecorder member for giant literal pool scripts.
4. Condition assert in TraceRecorder::test_property_cache_direct_slot to avoid
   false positive when executing function code accessing a global.
2008-07-10 21:55:09 -07:00
shaver@mozilla.org
3cd4d74f76 here, have a _working_ Thumb back-end 2008-07-11 00:45:54 -04:00
shaver@mozilla.org
6f69036887 here, have a Thumb back-end 2008-07-11 00:40:26 -04:00
Andreas Gal
cc38ec5e21 Don't crash when expecting an int32 as double box in unbox but getting something else (and better debug output). 2008-07-10 21:23:32 -07:00
shaver@mozilla.org
5089017f47 only build JIT builtins if ENABLE_JIT, and lose antique *inlines.h 2008-07-11 00:10:27 -04:00
Andreas Gal
4cba5853d4 Merge. 2008-07-10 20:35:40 -07:00
Andreas Gal
4e34cfc559 IFEQ and IFNE are identical for us. We just expect the same boolean on the stack and side exit if not. 2008-07-10 20:35:19 -07:00
shaver@mozilla.org
b39149fe63 Build the JIT by default if we're on x86, and control enabling it for content
via javascript.options.content_jit.
2008-07-10 23:05:27 -04:00
shaver@mozilla.org
6d68b678b3 don't include jstracer.h (and thus nanojit, etc.) if not building with JS_TRACER 2008-07-10 22:19:15 -04:00
shaver@mozilla.org
66b22a063c use a type that windows knows about for offset computation 2008-07-10 22:17:41 -04:00
shaver@mozilla.org
795a6bbef1 try to get alloca on Windows; remind me to strip these flailing commits before we merge 2008-07-10 22:10:48 -04:00
shaver@mozilla.org
03ad7cdff2 my turn to merge; had to happen eventually 2008-07-10 21:44:41 -04:00
shaver@mozilla.org
d08e7d5aa1 disable tracer for platforms not supported by nanojit 2008-07-10 21:43:05 -04:00
Andreas Gal
ca4e6419ee shaver's favorite operating system of choice doesn't like templates, so de-template tracker since we use it with LInsp only anyway. 2008-07-10 18:42:04 -07:00
shaver@mozilla.org
db247b7d6c some better OS_CFLAGS for Linux 2008-07-10 21:38:47 -04:00
shaver@mozilla.org
a82e389447 support non-JS_TRACER builds 2008-07-10 21:38:26 -04:00
shaver@mozilla.org
0695011b26 try to make alloca work for Windows 2008-07-10 21:37:49 -04:00
David Anderson
1bfa0a2b0e Actually fixed ifeq/ifne fusion now. 2008-07-10 17:54:19 -07:00
Andreas Gal
c99a7ff3bd Merge. 2008-07-10 17:42:25 -07:00
shaver@mozilla.org
f9a01d9be5 fix opcode math with the mighty hammer of casting 2008-07-10 20:41:55 -04:00
Andreas Gal
a72b1ecc06 Merge. 2008-07-10 17:41:45 -07:00
Andreas Gal
4a0541e2ae nanojit doesn't support loads with non-constant offsets so don't do that 2008-07-10 17:41:24 -07:00
shaver@mozilla.org
634b195855 the rest of the stdint defs, no idea why I didn't do them before 2008-07-10 20:25:57 -04:00
Andreas Gal
16eda7e83e Merge. 2008-07-10 17:05:13 -07:00
Andreas Gal
e6cb4750e2 Steal the reference to cx from the BoxDouble call instead of observing the load. 2008-07-10 17:03:59 -07:00
Andreas Gal
4ad95932a2 Fixed the setelem a[i] bug. 2008-07-10 16:55:37 -07:00
David Anderson
e5ec5ac4b5 Nanojit needs a LINUX define (which may be my fault), fixing it here for now 2008-07-10 16:26:28 -07:00
shaver@mozilla.org
34f7e86edf use VirtualAlloc for Windows, since it lacks valloc 2008-07-10 18:39:51 -04:00
shaver@mozilla.org
07c51d9867 interp needs tracer.h 2008-07-10 17:31:38 -04:00
shaver@mozilla.org
6a5deaf550 Decouple jscntxt.h from jstracer.h so that xpconnect doesn't try to include all of
nanojit.
2008-07-10 17:29:16 -04:00
shaver@mozilla.org
0b285b6a7e FASTCALL for Windows 2008-07-10 17:16:31 -04:00
shaver@mozilla.org
e2ed248ddf int32_t, now available on Windows 2008-07-10 16:58:08 -04:00
shaver@mozilla.org
60c7caba17 Unlike software developers, g++ doesn't like variable-sized arrays. Have some alloca! 2008-07-10 16:48:42 -04:00
shaver@mozilla.org
7b7430ef26 merge 2008-07-10 16:47:12 -04:00
David Anderson
8282c44200 Fixed guarding of eq+ifeq/ifne fusions and enabled tracing JSOP_GOTO (no-op) 2008-07-10 13:35:17 -07:00