Commit Graph

76 Commits

Author SHA1 Message Date
Joel Dice
b4c1c6badf fix process=interpret build 2009-10-10 18:23:14 -06:00
Joel Dice
44a6620aa1 disable use of SSE when compiling ahead-of-time 2009-10-10 17:46:43 -06:00
Joel Dice
7aa906d97b support runtime-visible annotations and java.lang.reflect.Proxy 2009-09-18 18:01:54 -06:00
Joel Dice
73dc058c14 implement StackTraceElement.getFileName properly 2009-08-27 16:28:44 -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
jet
1ffe46a545 added ARM interpreted mode supported 2009-08-06 11:52:36 -06:00
Joel Dice
514d0bf7e5 fix deadlocks and other misbehaviors in class initialization code 2009-07-20 14:12:38 -06:00
Joel Dice
11e61543a3 fix bootimage build 2009-05-31 21:16:58 -06:00
Joel Dice
9682d63b84 fix marshalling of 64-bit arguments in interpret.cpp 2009-05-25 21:20:29 -06:00
Joel Dice
43f5c3f382 fix process=interpret build 2009-05-25 21:05:49 -06:00
Joel Dice
eb3bd25aa1 code cleanup and build fixes 2009-05-04 19:04:17 -06:00
Joel Dice
0cd4eb2655 early sketch of continuation support 2009-05-03 14:57:11 -06:00
Joel Dice
d1018bf078 update copyright years 2009-03-15 12:02:36 -06:00
Joel Dice
8410e1d683 ensure reads and writes of volatile 64-bit fields are atomic 2009-03-03 18:02:11 -07:00
Joel Dice
2ca8132d97 implement support for volatile fields 2009-03-02 20:18:15 -07:00
Joel Dice
54ad7c4e98 tolerate ConstantValue attributes on non-static fields, since the compiler ensures that they are initialized in any constructors for that class (i.e., the VM does not need to do anything special to initialize them) 2009-01-10 12:25:52 -07:00
Joel Dice
5e727c8c5d throw an error if a volatile field is encountered, since we don't yet support them properly 2008-12-18 16:32:18 -07:00
Joel Dice
93d4fbc43d fix platform=windows and process=interpret builds 2008-12-03 08:44:07 -07:00
Joel Dice
ec791a90de fix process=interpret build 2008-06-04 16:17:06 -06:00
Joel Dice
d9ec8e20bf implement Thread.getStackTrace, activeCount, and enumerate 2008-04-11 16:48:39 -06:00
Joel Dice
bd618a51f6 translate exception handler table into a form which does not depend on the constant pool after JIT compiling a method 2008-04-11 13:03:40 -06:00
Joel Dice
c7a357aa5e implement l2d and l2f in interpret.cpp 2008-03-21 13:52:09 -06:00
Joel Dice
823148841a fix generation of UnsatisfiedLinkError message in resolveNativeMethodData 2008-02-20 10:51:54 -07:00
Joel Dice
9601f2fb04 fix process=interpret build 2008-02-20 10:48:08 -07:00
Joel Dice
2edaa82801 prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
Joel Dice
9a13df3024 fix marshalling return values when calling java methods from native code 2008-01-17 12:55:05 -07:00
Joel Dice
2f83468b80 remove context argument from Allocator::tryAllocate and Allocator::allocate, since we aren't using it after all 2008-01-14 16:37:24 -07:00
Joel Dice
0298865efa refactor memory allocation to allow better detection and handling of low-memory conditions 2008-01-13 15:05:08 -07:00
Joel Dice
f75c9c8d33 fix build breakage in interpret.cpp 2008-01-10 10:36:07 -07:00
Joel Dice
8e5ce11047 refactor memory management code
We now support immortal objects, which the GC will scan for references
but not consider for collection.  On x86_64, we allocate JIT code memory
via mmap, which lets us map memory into the bottom 2GB of the address
space, ensuring that 32-bit relative jumps and calls work.
2008-01-09 18:20:36 -07:00
Joel Dice
396c979de8 fix interpret.cpp build breakage 2007-12-11 14:29:04 -07:00
Joel Dice
fdeafe46fd 2+2 test now works with new JIT code 2007-12-11 14:26:59 -07:00
Joel Dice
56a5cf2503 fix thinko in jsr_w implementation 2007-11-27 15:22:05 -07:00
Joel Dice
0bbe9489a7 flesh out call tracing in new JIT code 2007-11-26 16:15:53 -07:00
Joel Dice
49ed41daa0 refactor stack walking interface in processor.h and sketch stack walking implementation in compile2.cpp 2007-11-25 16:00:55 -07:00
Joel Dice
a017dab73a handle weak maps properly in hashMapResize, hashMapRemove, etc.; move Processor::parameterFootprint() into machine.h/machine.cpp 2007-11-20 15:24:02 -07:00
Joel Dice
6c8a35c341 move populateMultiArray from interpret.cpp to process.h 2007-11-20 09:20:26 -07:00
Joel Dice
fe0e542afe finish support for inline vtables in class objects; convert constant pools from arrays to singletons to reduce memory footprint 2007-11-05 14:40:17 -07:00
Joel Dice
f1bc2be9f9 if we can't resolve a bootstrap class in isAssignableFrom(), we swallow the exception and return false 2007-11-05 09:08:08 -07:00
Joel Dice
fe0708c09a check for all non-virtual methods in invoke(), not just static ones 2007-11-05 08:52:03 -07:00
Joel Dice
16ea75f91c preserve vm flags of bootstrap class (except for BootstrapFlag) in updateBootstrapClass() 2007-11-05 08:39:48 -07:00
Joel Dice
19d36cc463 implement impdep1 instruction for lazily loading bootstrap classes 2007-11-05 08:29:43 -07:00
Joel Dice
6c0e0c37e2 snapshot 2007-11-05 07:28:46 -07:00
Joel Dice
94e9bd0fd2 clean up bootstrap type generation to eliminate redundancy (broken) 2007-11-04 14:15:28 -07:00
Joel Dice
e820b6a8a4 sketch of singleton support 2007-11-02 15:08:14 -06:00
Joel Dice
80775f6cf8 initial sketch of singleton support 2007-11-02 08:15:06 -06:00
Joel Dice
956106f518 implement StringBuilder.delete() more efficiently 2007-10-29 15:40:05 -06:00
Joel Dice
7f1837fecd move fixed object (mark and sweep) support into heap.cpp and refine algorithms for determining when and how much to GC 2007-10-28 13:14:53 -06:00
Joel Dice
60072b9fdc implement fixed object support 2007-10-27 19:54:30 -06:00