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