Commit Graph

2159 Commits

Author SHA1 Message Date
Joshua Warner
ef5e534e1e begin moving register allocator out of compiler.cpp 2013-02-13 22:13:55 -07:00
Joshua Warner
34471e5d60 factor out assert / abort / expect implementations 2013-02-13 22:13:52 -07:00
Joshua Warner
d7f088c9e7 adjust package structure in codegen (vm -> avian::codegen and avian::codegen::lir)
The eventual intent with the lir namespace is to formalize some of
the important bits of Assembler interface, to be tested, debug-printed,
and potentially, serialized.

Also, group arguments to apply(...) in OperandInfos
2013-02-12 17:47:57 -07:00
Joshua Warner
aacfb9ec85 fix unused function warnings in codegen/powerpc/assembler.cpp when building with clang 2013-02-12 17:45:19 -07:00
Joshua Warner
3589d5c205 Merge branch 'master' of git://github.com/ReadyTalk/avian
Conflicts:
	src/codegen/arm/assembler.cpp
	src/common.h
	src/machine.cpp
2013-02-12 17:37:19 -07:00
Joshua Warner
f7b49ddb06 allow codegen targets (Architectures and Assemblers) to co-exist
The primary motivation behind this is to allow all the different Assemblers
to be built at once, on a single machine. This should dramatically reduce
the time required to make sure that a particular change doesn't break
the build for one of the not-so-common architectures (arm, powerpc)

Simply pass "codegen-targets=all" to make to compile all
src/codegen/<arch>/assembler.cpp.

Note that while these architectures are built, they will not be fully-
functional.  Certain stuff is assumed to be the same across the entire
build (such as TargetBytesPerWord), but this isn't the case anymore.
2013-02-12 17:16:40 -07:00
Joel Dice
86c92e26cb Merge commit '752d02e7786b807185e3f4cd254ee988c01f830f' into HEAD
Conflicts:
	classpath/java-io.cpp
	makefile
	src/bootimage.cpp
	src/interpret.cpp
	src/machine.cpp
	src/windows.cpp
2013-02-12 10:47:28 -07:00
Joel Dice
8a7b6488d4 Merge remote branch 'osmandapp/upstream' 2013-02-12 09:26:01 -07:00
Joel Dice
dc943c250a delay incrementing Thread::criticalLevel until after entering ActiveState
If we increment the value while we're still in IdleState, another
thread may try to GC before we are able to enter ActiveState, which
will lead to an assertion failure when the footprint function is
called.
2013-02-12 08:15:39 -07:00
Joshua Warner
68776e5d73 move all codegen source in to codegen/ dir 2013-02-10 18:55:38 -07:00
Joshua Warner
964d054117 move RUNTIME_ARRAY into it's own header 2013-02-10 18:07:11 -07:00
Joshua Warner
5dd770d7ea rename cast -> fieldAtOffset 2013-02-10 18:07:03 -07:00
Joshua Warner
2a1834e48a rename mask -> maskAlignedPointer 2013-02-10 18:06:48 -07:00
Joshua Warner
d26d8fdb9f rename ceiling -> ceilingDivide 2013-02-10 18:06:15 -07:00
Alexey Pelykh
9c632b778b Proper warning disabling 2013-02-10 09:41:46 +02:00
Alexey Pelykh
5d35d64c80 Disable operator new warning 2013-02-10 09:31:41 +02:00
Alexey Pelykh
d5d2e50ac7 Trace writeout refactor 2013-02-09 09:42:51 +02:00
Alexey Pelykh
83e55ce9cc RUNTIME_ARRAY usage 2013-02-09 09:42:50 +02:00
Alexey Pelykh
e4bd01f7f3 Comment out printTrace 2013-02-09 09:42:49 +02:00
Alexey Pelykh
f3c443dbfa Fix dword<>qword mistake 2013-02-09 09:42:47 +02:00
Alexey Pelykh
b918389672 Support built-in jars when wusing multi-library 2013-02-09 09:42:45 +02:00
Alexey Pelykh
74c9f60b98 Fix crash if no avian.boostrap is specified (oops) 2013-02-09 09:42:36 +02:00
Alexey Pelykh
d0ac63292c Fix crash if no avian.boostrap is specified (oops) 2013-02-09 09:42:35 +02:00
Alexey Pelykh
bd2a836395 Fix crash if no avian.boostrap is specified (oops) 2013-02-09 09:42:34 +02:00
Alexey Pelykh
bde33c97f8 Fix crash if no avian.boostrap is specified 2013-02-09 09:42:33 +02:00
Alexey Pelykh
9ed312451a Allow avian.bootstrap to accept multiple libraries 2013-02-09 09:42:32 +02:00
Alexey Pelykh
c13149088e Fix crash on memory validation 2013-02-09 09:42:31 +02:00
Alexey Pelykh
c6694287e9 Finally, proper jvm.dll linking for WP8 2013-02-09 09:42:29 +02:00
Alexey Pelykh
d51db00136 Allow output of exceptions to debugger. Generate WinMD file 2013-02-09 09:42:28 +02:00
Alexey Pelykh
4228f69a0d Additional AOT_ONLY ifdef 2013-02-09 09:42:26 +02:00
Alexey Pelykh
acdd297fb2 Fixes to WP8/WinRT support 2013-02-09 09:42:25 +02:00
Alexey Pelykh
dca12d3cd0 WinRT/WP8 process=compile 2013-02-09 09:42:22 +02:00
Alexey Pelykh
4d03650544 Replaced TODO comments with messages ; More correct AVIAN_AOT_ONLY usage 2013-02-09 09:42:21 +02:00
Alexey Pelykh
1b43caf815 Makefile fix 2013-02-09 09:42:20 +02:00
Alexey Pelykh
2f2cac556c Windows Phone 8 / Windows RT initial support
Conflicts:

	makefile
2013-02-09 09:42:19 +02:00
Alexey Pelykh
b1990ba55f Android toolchain 2013-02-09 09:42:14 +02:00
Victor Shcherb
3a42db9f6f Add android platform 2013-02-09 09:42:13 +02:00
Joel Dice
f9b3be0301 fix format string in loadLibrary call to snprintf
"%*s" means "at least", whereas "%.*s" means at most, and the latter
is what I intended.  This only became noticable as of 9f22a70, when I
added another directory to the library path, which caused loadLibrary
to fail to find libraries in either directory.
2013-02-08 08:24:06 -07:00
Joel Dice
6d4f797b66 fix handling of non-ascii characters in filenames on Windows 2013-02-07 11:39:04 -07:00
Joel Dice
5241660463 fix SIGSEGV and off-by-one error in logDebug
We must use separate va_start/va_end pairs for each call to vsnprintf
on Linux and possibly other platforms in order to avoid a crash.
Also, we need to give it room to null terminate the string at the
right point.
2013-02-07 09:33:22 -07:00
Joel Dice
d97fe5304f use THREAD_RUNTIME_ARRAY instead of RUNTIME_ARRAY where appropriate
This ensures that if the stack is unwound for an exception we'll still
release the memory.
2013-02-07 09:33:20 -07:00
Alexey Pelykh
9e4144f92b Trace writeout refactor 2013-02-07 11:39:28 +02:00
Alexey Pelykh
e6fc4e3bea RUNTIME_ARRAY usage 2013-02-07 11:39:27 +02:00
Alexey Pelykh
edbea8ac2b Comment out printTrace 2013-02-07 11:39:27 +02:00
Alexey Pelykh
33d4f008f4 Fix dword<>qword mistake 2013-02-07 11:39:25 +02:00
Alexey Pelykh
1d60ababd3 Support built-in jars when wusing multi-library 2013-02-07 11:39:23 +02:00
Alexey Pelykh
3287b1354a Fix crash if no avian.boostrap is specified (oops) 2013-02-07 11:39:14 +02:00
Alexey Pelykh
ba0ec3759d Fix crash if no avian.boostrap is specified (oops) 2013-02-07 11:39:13 +02:00
Alexey Pelykh
8e879f80a7 Fix crash if no avian.boostrap is specified (oops) 2013-02-07 11:39:12 +02:00
Alexey Pelykh
2e3856211b Fix crash if no avian.boostrap is specified 2013-02-07 11:39:11 +02:00