Andreas Gal
0e0aa2426d
Print meaningful filename/line-number info for trace entry/exit.
2008-07-11 13:57:16 -07:00
Andreas Gal
7db02022b6
Report the source location when recording a trace.
2008-07-11 13:45:38 -07:00
Andreas Gal
301d3557a1
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
3c0fe29055
Windows cares a lot more about where FASTCALL is; such a sensitive platform
2008-07-11 11:40:07 -04:00
shaver@mozilla.org
139ef8227d
begone, cat nspr/Version error noise
2008-07-11 11:20:44 -04:00
shaver@mozilla.org
2569788e27
set some more config bits for Windows, mostly blindly
2008-07-11 11:02:14 -04:00
shaver@mozilla.org
4d0b323d47
turn on all the shift tests, and find a bug with it!
2008-07-11 10:50:57 -04:00
Andreas Gal
c9cc6c5f45
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
6d574df7af
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
e58f7ed9d8
Still trying to get the ARM register updating right.
2008-07-11 00:31:48 -07:00
Andreas Gal
3f4882a830
Trying to make arm work. Flying blind here.
2008-07-10 22:35:06 -07:00
Andreas Gal
4b5a8a918c
Adjust sp/ip for ARM. Very useful when trying to run on ARM.
2008-07-10 22:29:06 -07:00
shaver@mozilla.org
f47e82b2de
some ARM stuff
2008-07-11 01:27:06 -04:00
Andreas Gal
9139b65106
Merge (no, really, can someone teach Mercurial to not do this?).
2008-07-10 22:12:04 -07:00
Andreas Gal
556bf3f96f
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
53883bfbf4
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
a753eda39f
here, have a _working_ Thumb back-end
2008-07-11 00:45:54 -04:00
shaver@mozilla.org
e47a75e65c
here, have a Thumb back-end
2008-07-11 00:40:26 -04:00
Andreas Gal
b6707f6c19
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
c0366e9b30
only build JIT builtins if ENABLE_JIT, and lose antique *inlines.h
2008-07-11 00:10:27 -04:00
Andreas Gal
90c5b152e7
Merge.
2008-07-10 20:35:40 -07:00
Andreas Gal
20f942f5f0
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
7b70cff612
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
3a894689a8
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
ccab8cc3f3
use a type that windows knows about for offset computation
2008-07-10 22:17:41 -04:00
shaver@mozilla.org
ecfdf28842
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
fd8b6334ac
my turn to merge; had to happen eventually
2008-07-10 21:44:41 -04:00
shaver@mozilla.org
ff932a53d8
disable tracer for platforms not supported by nanojit
2008-07-10 21:43:05 -04:00
Andreas Gal
5e77678d2a
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
03fde28ae1
some better OS_CFLAGS for Linux
2008-07-10 21:38:47 -04:00
shaver@mozilla.org
b010bb1781
support non-JS_TRACER builds
2008-07-10 21:38:26 -04:00
shaver@mozilla.org
6ec66f18d6
try to make alloca work for Windows
2008-07-10 21:37:49 -04:00
David Anderson
3a3cd06c43
Actually fixed ifeq/ifne fusion now.
2008-07-10 17:54:19 -07:00
Andreas Gal
c9bf6a6091
Merge.
2008-07-10 17:42:25 -07:00
shaver@mozilla.org
b0ad41b5ab
fix opcode math with the mighty hammer of casting
2008-07-10 20:41:55 -04:00
Andreas Gal
bc8f19facf
Merge.
2008-07-10 17:41:45 -07:00
Andreas Gal
c506cb686e
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
c673ef75a9
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
3e9da8925c
Merge.
2008-07-10 17:05:13 -07:00
Andreas Gal
dffeaf5997
Steal the reference to cx from the BoxDouble call instead of observing the load.
2008-07-10 17:03:59 -07:00
Andreas Gal
929143b685
Fixed the setelem a[i] bug.
2008-07-10 16:55:37 -07:00
David Anderson
421a4d9058
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
4a4a43e952
use VirtualAlloc for Windows, since it lacks valloc
2008-07-10 18:39:51 -04:00
shaver@mozilla.org
4a120b6af6
interp needs tracer.h
2008-07-10 17:31:38 -04:00
shaver@mozilla.org
325fb165a9
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
7ee1731d53
FASTCALL for Windows
2008-07-10 17:16:31 -04:00
shaver@mozilla.org
ff2b500e91
int32_t, now available on Windows
2008-07-10 16:58:08 -04:00
shaver@mozilla.org
86412904af
Unlike software developers, g++ doesn't like variable-sized arrays. Have some alloca!
2008-07-10 16:48:42 -04:00
shaver@mozilla.org
344d5edbe7
merge
2008-07-10 16:47:12 -04:00
David Anderson
229e5b4a36
Fixed guarding of eq+ifeq/ifne fusions and enabled tracing JSOP_GOTO (no-op)
2008-07-10 13:35:17 -07:00