Commit Graph

1387 Commits

Author SHA1 Message Date
Joel Dice
23197da679 fix handling of subroutines in methods of return type long on 32-bit systems 2009-10-06 03:17:12 +00:00
Joel Dice
4f78783ef1 various bugfixes for SSE-based floating-point support 2009-10-05 14:25:12 +00:00
Joel Dice
d25da6116a snapshot 2009-10-04 22:10:36 +00:00
Joel Dice
5dad9bddd6 snapshot 2009-10-04 19:56:48 +00:00
Joel Dice
6cef085d7e snapshot 2009-09-26 19:43:44 +00:00
Joel Dice
325f93b4d1 Merge branch 'master' into wip
Conflicts:

	src/compile.cpp
	src/compiler.cpp
	src/machine.h
	src/x86.cpp
2009-09-20 15:43:32 -06:00
Joel Dice
953cb69e5e move proxy and annotation code from C++ to Java
This allows code shrinkers to remove it if it's not used by the application.
2009-09-19 16:21:15 -06:00
Joel Dice
1a2eb3836c Merge branch 'master' of oss.readytalk.com:/var/local/git/avian 2009-09-18 18:01:57 -06:00
Joel Dice
7aa906d97b support runtime-visible annotations and java.lang.reflect.Proxy 2009-09-18 18:01:54 -06:00
Joel Dice
d0f8889e27 fix GC safety bugs in parseMethodTable and makeArrayClass 2009-09-18 12:20:35 -06:00
Joel Dice
b645c284b5 fix memory leak in debug build 2009-09-17 21:36:52 -06:00
Joel Dice
fcc4ff93e0 remove debug logging 2009-09-17 21:22:47 -06:00
Joel Dice
1dfa421a6c fix argument mixup in Runtime.exit 2009-09-17 18:28:42 -06:00
Joel Dice
bf2b17cfa6 fix misspelled comment 2009-09-04 17:08:45 -06:00
Joel Dice
b0ba70866e fix incorrect line numbers in NPE traces 2009-09-04 15:09:40 -06:00
Joel Dice
e47c149fb1 fix misuse of FindFirstFile 2009-09-03 17:57:32 -06:00
Joel Dice
6519047342 fix bootimage build 2009-09-03 09:06:04 -06:00
Joel Dice
84ac2e417d follow reference pointer before using in in refrenceTargetUnreachable in case it points to a moved object 2009-09-01 18:32:21 -06:00
Joel Dice
6aff383ee1 ensure Heap::needsMark and Heap::mark work correctly during GC 2009-09-01 18:31:18 -06:00
Joel Dice
4f794f533e fix handling of reachable, moved weak references in postVisit 2009-09-01 17:23:30 -06:00
Joel Dice
49005f0746 fix name-clash regression in heapdump.cpp 2009-09-01 13:09:53 -06:00
Joel Dice
27f35bf239 fix heapdump build 2009-09-01 12:15:33 -06:00
Joel Dice
73dc058c14 implement StackTraceElement.getFileName properly 2009-08-27 16:28:44 -06:00
Joel Dice
1a0eef7e2d add support for building with MSVC on Windows 2009-08-26 18:26:44 -06:00
Joel Dice
4297fa04b3 run java finalizers in a separate thread to guarantee no application locks are held when doing so 2009-08-24 17:51:31 -06:00
Joel Dice
4536f13ee4 superficial reformatting of previous commit 2009-08-21 09:44:18 -06:00
Joel Dice
637a676fb0 fix MinGW 3.4 build 2009-08-21 09:37:49 -06:00
Joel Dice
a56c1d8765 fix GC-safety bug in resolveSpec 2009-08-20 12:37:03 -06:00
Joel Dice
6196f61938 clear Thread::javaThread before entering zombie state, since clearing it in Thread::dispose is too late - the reference may already be invalid since we don't visit GC roots for zombie threads 2009-08-20 08:49:01 -06:00
Joel Dice
c4b5ecec90 implement Runtime.addShutdownHook and Thread.setDaemon; avoid segfaults due to an application calling e.g. CallStaticBooleanMethod when it really meant CallStaticVoidMethod 2009-08-19 14:27:03 -06:00
Joel Dice
df3baeb83b handle null value properly in SetObjectArrayElement 2009-08-19 07:36:52 -06:00
Joel Dice
0a2e611baa handle case of null thread local in SegFaultHandler::handleSignal 2009-08-18 15:47:08 -06:00
Joel Dice
0eba1eeaf2 leave thread in JoinedState instead of ZombieState in DetachCurrentThread 2009-08-18 15:29:25 -06:00
Joel Dice
01dcb1661b don't resolve all constant pool entries in linkClass - just the field and method specs 2009-08-18 15:27:21 -06:00
Joel Dice
6449c8275a fix process=interpret build 2009-08-18 14:41:21 -06:00
Joel Dice
c4edabdc02 implement ClassLoader.resolveClass and ensure class is linked in e.g. Class.getMethods; minor bugfixes 2009-08-18 14:26:28 -06:00
Joel Dice
dae0842c95 Merge branch 'master' of oss.readytalk.com:/var/local/git/avian 2009-08-17 13:10:36 -06:00
Joel Dice
062f6968a1 only emit a crash dump for access violations 2009-08-14 15:58:19 -06:00
Joel Dice
7fcbf9d85c fix reading 2-byte UTF-8 constants 2009-08-14 08:52:31 -06:00
Joel Dice
3facd3f735 treat SoftReferences as WeakReferences; do vtable or interface table lookups as necessary in MyProcessor::invoke; various bugfixes 2009-08-13 09:17:05 -06:00
Joel Dice
b3a5823536 set JNIEnvVTable::NewWeakGlobalRef to NewGlobalRef since we don't yet have a weak version 2009-08-13 09:07:05 -06:00
Joel Dice
99e5e65bd8 implement sun.misc.Unsafe methods; set gnu.cpu.endian property 2009-08-13 09:05:37 -06:00
Joel Dice
42622d0d25 Merge branch 'master' of oss.readytalk.com:/var/local/git/avian 2009-08-12 19:41:05 -06:00
Joel Dice
bf48f1e297 set java.version property in Avian_gnu_classpath_VMSystemProperties_preInit; add empty Avian_java_lang_VMClassLoader_resolveClass implementation 2009-08-12 19:37:29 -06:00
Joel Dice
61cb8b3deb handle zero-length lookup tables in lookupswitch 2009-08-12 19:32:12 -06:00
Joel Dice
bc884b4669 Merge branch 'master' of oss.readytalk.com:/var/local/git/avian 2009-08-11 18:50:04 -06:00
Joel Dice
22ae42b712 look for a native method implementation using the fast calling convention (Avian_*) before one using the standard convention (Java_*) to avoid false positives late in the search path 2009-08-11 18:49:58 -06:00
Josh warner
78ea4d20e3 added loneMatch to improve register allocation 2009-08-11 13:46:51 -06:00
Josh warner
f29199a285 fixed several operand type errors that appeared on 64-bit platforms 2009-08-11 13:30:31 -06:00
Josh warner
711680a183 fixed powerpc compile errors 2009-08-11 13:29:00 -06:00
Josh warner
cd59222f53 fixed propegation of result sizes 2009-08-11 13:27:25 -06:00
Josh warner
32167168f8 fixed incorrect opSize bug for 64-bit platforms 2009-08-11 13:25:22 -06:00
Joel Dice
535a152e86 Merge branch 'master' of ../avian-old 2009-08-11 12:42:14 -06:00
Joel Dice
935329d7cf fix 32-bit shift case in unsignedShiftRightC 2009-08-11 12:36:25 -06:00
Joel Dice
db58097165 re-enable finalization 2009-08-11 10:04:41 -06:00
Joel Dice
24abc8acfe Merge branch 'master' of ../avian 2009-08-11 09:43:29 -06:00
Joel Dice
83b0a217e0 disable debug trap 2009-08-11 09:40:54 -06:00
Joel Dice
a8b333fdc6 define LD and LX unconditionally for __x86_64__ since they should be the same for Windows and POSIX 2009-08-11 09:31:00 -06:00
Joel Dice
8ac06d8a47 initialize classloader map if necessary in Avian_java_lang_ClassLoader_defineClass 2009-08-11 09:25:35 -06:00
Joel Dice
336e822ba9 remove debug logging 2009-08-11 09:23:38 -06:00
Joel Dice
b1014b24f9 specify java.specification.version in Avian_gnu_classpath_VMSystemProperties_preInit 2009-08-11 09:21:26 -06:00
Joel Dice
fb5b0570c3 replace slashes with dots in class name before passing it to ClassLoader.loadClass 2009-08-11 09:20:49 -06:00
Joel Dice
28b5c46a0b fix GC safety bug in makeNewGeneral 2009-08-10 17:35:44 -06:00
Josh warner
af4d82ef7e Merge branch 'master' of git://oss.readytalk.com/avian 2009-08-10 13:42:57 -06:00
Josh warner
9910e310cb fixed register reserve logic in pickTarget 2009-08-10 13:42:37 -06:00
Josh warner
1d3ef1fc43 Merge branch 'master' of git://oss.readytalk.com/avian, fixed problems that occured in broader testing
Conflicts:
	src/compile.cpp
	src/compiler.cpp
	src/powerpc.cpp
	src/x86.S
	src/x86.cpp
2009-08-10 13:20:23 -06:00
Joel Dice
001000364d add classloader parameter to functions which may directly or indirectly load classes; include methods inherited from interfaces (but not explicitly declared) in method tables and virtual tables of abstract classes 2009-08-10 07:56:16 -06:00
Joel Dice
54bb64cfb2 freeze sites for dead values in resolveOriginalSites
Previously, we simply removed the element from the sites array, but
this led to problems when the junction sites are shared among multiple
junctions such that the value at a given index is live at one junction
and dead at another.
2009-08-10 07:51:19 -06:00
Joel Dice
1a2deff97d Merge branch 'master' of oss.readytalk.com:/var/local/git/avian 2009-08-09 14:43:53 -06:00
Joel Dice
2f864ebea5 fix LLD definition for MinGW 4.4 2009-08-07 16:28:47 -06:00
Joel Dice
2da6980eb5 print intptr_t's as pointers in compareIpToMethodBounds to avoid printf compatibility issues 2009-08-07 16:27:24 -06:00
Joel Dice
012d548bbb fix sign extension from int to long on x86_64 2009-08-07 14:48:30 -06:00
jet
1ffe46a545 added ARM interpreted mode supported 2009-08-06 11:52:36 -06:00
Josh warner
f8bbc609e8 corrected debug messages 2009-08-06 10:32:00 -06:00
Josh warner
a2e639a2d2 added floating point support, split plan function 2009-08-06 10:26:22 -06:00
Josh warner
61bc729974 added floating point support, split plan method 2009-08-06 10:17:48 -06:00
Josh warner
53c0656ee7 added floating point support, split plan method 2009-08-06 10:14:31 -06:00
Josh warner
7483fa154d added floating point support, instrinsics support 2009-08-06 10:01:57 -06:00
Josh warner
c3a389429e split source function, update interface for floating point / instrinsic support 2009-08-06 08:54:23 -06:00
Josh warner
c042354ea0 added detectFeature function, used to detect sse in x86.cpp 2009-08-06 08:49:26 -06:00
Josh warner
5cc605b56d added floating point support. 2009-08-06 08:48:15 -06:00
Josh warner
c7a1a7af77 added floating point support, split plan function. 2009-08-06 08:44:15 -06:00
Joel Dice
0c36b7b3b6 change popDouble return type to double 2009-08-05 15:00:27 -06:00
Joel Dice
63fa0668ff avoid poor performance due to deeply-nested branches in MultiRead::intersect 2009-08-04 18:28:34 -06:00
Joel Dice
e9ee4a618c implement Avian_java_lang_VMClassLoader_defineClass 2009-08-04 18:27:04 -06:00
Joel Dice
d5f4811b43 check for exception after calling resolveClass in parseInterfaceTable 2009-08-04 08:50:04 -06:00
Joel Dice
f8bf83bfec fix recent regression in findInHierarchy 2009-08-04 08:42:16 -06:00
Joel Dice
aa6e3048b3 set os.arch property in Avian_gnu_classpath_VMSystemProperties_preInit 2009-08-03 16:18:41 -06:00
Joel Dice
9f2abd5d8a fix out-of-date JNI method implementations to reflect newer static field table layout 2009-08-03 16:18:16 -06:00
Joel Dice
cb563f76e1 check superinterfaces when looking up methods and fields 2009-08-03 16:16:41 -06:00
Joel Dice
4ae3a1267a remove unused method 2009-08-03 16:16:01 -06:00
Joel Dice
c3a8ca505c avoid function pointer cast warning from GCC 3.4 2009-08-03 10:56:43 -06:00
Joel Dice
ad0592df6f print class name properly when throwing NoSuchMethodError 2009-07-29 10:32:16 -06:00
Joel Dice
7060a5d4f0 clear Machine::byteArrayMap before generating boot image since it will not be used when the image is loaded 2009-07-28 17:22:07 -06:00
Joel Dice
1b8777aa6b free correct object in Context::dispose 2009-07-28 17:20:23 -06:00
Joel Dice
7b183e8f4e don't run Java finalizers when exiting the VM 2009-07-28 16:58:01 -06:00
Joel Dice
14e73560bb fix order of operations in vmJump 2009-07-27 18:09:25 -06:00
Joel Dice
ad66ae2691 disable debug logging 2009-07-27 18:09:12 -06:00
Joel Dice
0447d9bed3 use __MINGW32__ instead of __WINDOWS__ in x86.cpp and assume Linux if it's not defined 2009-07-27 07:49:54 -06:00
Joel Dice
27d863790c Merge branch 'win64' into gnu
Conflicts:

	makefile
	src/compile-x86.S
	src/x86.S
	src/x86.cpp
2009-07-25 20:48:36 -06:00