Joel Dice
|
60072b9fdc
|
implement fixed object support
|
2007-10-27 19:54:30 -06:00 |
|
Joel Dice
|
85012ba5b0
|
fix thinko in NewString() and make NewStringUTF() more robust
|
2007-10-26 18:04:20 -06:00 |
|
Joel Dice
|
fcc50f4da6
|
abort if vsnprintf() overflows in makeByteArray
|
2007-10-26 18:03:28 -06:00 |
|
Joel Dice
|
46ac6f92ee
|
implement JNIEnv::NewString()
|
2007-10-26 15:23:54 -06:00 |
|
Joel Dice
|
e892f1bff5
|
refactor System.getProperty() to reduce coupling with native code
|
2007-10-26 12:13:21 -06:00 |
|
Joel Dice
|
ccdc7fdda3
|
eliminate bin2c and use objcopy instead to translate binary data to an object file
|
2007-10-26 11:38:36 -06:00 |
|
Eric Scharff
|
6342fc7ccb
|
Read 2- and 3-byte UTF8 constants gracefully (but not correctly)
|
2007-10-25 17:58:53 -06:00 |
|
Joel Dice
|
74701b0790
|
fix thinko parsing properties in JNI_CreateJavaVM
|
2007-10-25 17:17:38 -06:00 |
|
Eric Scharff
|
34c5f184ed
|
Fix static cast to make gcc happy
|
2007-10-25 16:34:40 -06:00 |
|
Joel Dice
|
95621ac2d0
|
Merge branch 'master' of dice:git/vm
|
2007-10-25 16:06:10 -06:00 |
|
Joel Dice
|
20cc788fa4
|
support classloading from jar files compiled into the executable
|
2007-10-25 16:06:05 -06:00 |
|
Eric Scharff
|
a81b77a37e
|
fixes i2f i2d implementation. Fixes image drawing bugs on Mac OS X.
Also fixes a crash caused by implementing StringBuffer.toString(float)
|
2007-10-25 14:26:51 -06:00 |
|
Joel Dice
|
d4656e8a52
|
handle ConstantValue attributes for static fields
|
2007-10-25 13:20:39 -06:00 |
|
Joel Dice
|
b12b779c7f
|
add support for passing properties to the VM via JNI; use vm.builtins property to specify builtin libraries
|
2007-10-25 12:33:43 -06:00 |
|
Joel Dice
|
1c90ea5fd6
|
rewrite main.cpp to use jni.h interface for creating the VM and invoking the main method of the specified class
|
2007-10-25 09:04:13 -06:00 |
|
Joel Dice
|
89b22dd3ab
|
fix JNI invocation for return types of less than 32-bits
|
2007-10-24 17:06:12 -06:00 |
|
Joel Dice
|
92d61c1ba2
|
superficial tweak
|
2007-10-24 17:05:14 -06:00 |
|
Joel Dice
|
2c2718fdb5
|
primitive parseUtf8() implementation to ensure we handle null characters correctly, at least
|
2007-10-24 15:05:15 -06:00 |
|
Joel Dice
|
e66c53b446
|
remove unused file
|
2007-10-24 11:24:48 -06:00 |
|
Joel Dice
|
eaf1d205cd
|
more windows port fixes
|
2007-10-24 11:24:19 -06:00 |
|
Joel Dice
|
f2f453cf75
|
more system-specific tweaks for windows port (cont.)
|
2007-10-24 10:27:59 -06:00 |
|
Joel Dice
|
5bfd90cfed
|
more system-specific tweaks for windows port
|
2007-10-24 10:24:02 -06:00 |
|
Joel Dice
|
0f1a9bc77e
|
remove debug logging
|
2007-10-24 09:52:09 -06:00 |
|
Joel Dice
|
394d80a07a
|
fix use of uninitialized values in JarElement; use system-specific path separator in finder
|
2007-10-24 09:46:09 -06:00 |
|
Joel Dice
|
1c948652fd
|
fix posix build breakage
|
2007-10-23 17:22:56 -06:00 |
|
Joel Dice
|
c3300948bf
|
fix a few threading bugs in windows port
|
2007-10-23 16:21:28 -06:00 |
|
Joel Dice
|
eb4cea6291
|
more work on the windows port; we now have some tests passing
|
2007-10-23 14:05:59 -06:00 |
|
Joel Dice
|
1381267e70
|
mork work on the windows port
|
2007-10-23 11:22:48 -06:00 |
|
Joel Dice
|
58dec050c8
|
sketch of windows port
|
2007-10-22 19:00:57 -06:00 |
|
Joel Dice
|
ac4b28ffe6
|
refactor build system to support cross-compiling
|
2007-10-22 14:56:27 -06:00 |
|
Joel Dice
|
3e84d4438a
|
revise signatures of mark() and set() to take a target object and offset instead of a target object reference, paving the way for immovable objects
|
2007-10-22 11:22:30 -06:00 |
|
Joel Dice
|
f4dfc889fd
|
rough sketch of lookupswitch and tableswitch instructions
|
2007-10-22 08:14:05 -06:00 |
|
Joel Dice
|
64acabf130
|
fix thinko in getstatic
|
2007-10-17 20:50:43 -06:00 |
|
Joel Dice
|
02c1939de5
|
fix implicit conversion warnings
|
2007-10-17 20:03:01 -06:00 |
|
Joel Dice
|
569c81019c
|
mask out least significant bits during class dereference in generated code
|
2007-10-17 19:25:30 -06:00 |
|
Joel Dice
|
1aee58e390
|
fix tracking stack frames in compile.cpp
|
2007-10-17 18:41:49 -06:00 |
|
Joel Dice
|
2be830cae7
|
Merge branch 'master' of dice:git/vm
|
2007-10-17 11:22:16 -06:00 |
|
Joel Dice
|
e393f49fd6
|
fix Compiler.compileCaller() to work on both i386 and amd64
|
2007-10-17 11:22:09 -06:00 |
|
Joel Dice
|
4ecd84e373
|
Merge branch 'master' of dice.readytalk.com:git/vm
|
2007-10-16 19:23:31 -06:00 |
|
Joel Dice
|
f5c74dcaec
|
fix invalid use of Heap::needsMark in vm::mark
|
2007-10-16 19:23:20 -06:00 |
|
Joel Dice
|
5fb1495f4d
|
bugfixes and new instructions in compile.cpp
|
2007-10-16 19:21:35 -06:00 |
|
Joel Dice
|
29b5e81aed
|
align fields naturally in parseFieldTable
|
2007-10-16 19:20:36 -06:00 |
|
Joel Dice
|
200e933923
|
fix regression related to logging verbosity and exception handling in compile.cpp
|
2007-10-16 12:16:12 -06:00 |
|
Joel Dice
|
fc898c4df1
|
fix broken assumption that all native functions will push rbp on the stack first thing
|
2007-10-16 12:10:56 -06:00 |
|
Joel Dice
|
96ed27c55c
|
various bugfixes to get Tree.java to work
|
2007-10-16 11:21:26 -06:00 |
|
Joel Dice
|
5f6258045e
|
implement various floating point instructions; fix Floats.java to actually test something
|
2007-10-15 13:12:38 -06:00 |
|
Joel Dice
|
659555b6ce
|
fix use of uninitialized values at root thread creation time when running in stress mode; allocate Thread::defaultHeap on the heap instead of as part of the Thread structure
|
2007-10-13 19:18:25 -06:00 |
|
Joel Dice
|
5c99edd90e
|
fix many JIT GC bugs; GC.java now passes
|
2007-10-13 15:48:40 -06:00 |
|
Joel Dice
|
f58c6ef4e8
|
mark destination object array in System.arraycopy() if it resides in the tenured heap
|
2007-10-13 15:47:45 -06:00 |
|
Joel Dice
|
96c3b2b6a7
|
superficial code cleanup
|
2007-10-12 18:22:52 -06:00 |
|
Joel Dice
|
dbbcf90e6c
|
Merge branch 'master' of dice:git/vm
|
2007-10-12 16:06:39 -06:00 |
|
Joel Dice
|
b8ce22dc42
|
JIT GC bugfixes
|
2007-10-12 16:06:33 -06:00 |
|
Eric Scharff
|
05321e97f9
|
If you pass 0 to printTrace, it will print the stack trace of a null
pointer exception. This dramatically simplifies debugging in GDB:
p vm::printTrace(t, 0)
|
2007-10-12 14:54:37 -06:00 |
|
Joel Dice
|
349fe47c8d
|
JIT GC progress; fix interface method lookup bug
|
2007-10-12 11:56:43 -06:00 |
|
Joel Dice
|
5a92852f74
|
stack mapping progress
|
2007-10-12 08:26:36 -06:00 |
|
Joel Dice
|
3e1dbab0f0
|
move bitmap helper functions to common.h; preserve callee-saved registers in vmInvoke()
|
2007-10-11 20:52:16 -06:00 |
|
Joel Dice
|
201a658941
|
stack mapping bugfixes
|
2007-10-11 18:30:46 -06:00 |
|
Joel Dice
|
d5a8193614
|
lots of work on stack mapping, plus a couple of bugfixes
|
2007-10-11 16:43:03 -06:00 |
|
Joel Dice
|
69389ea8be
|
more progress towards stack mapping
|
2007-10-10 16:39:40 -06:00 |
|
Joel Dice
|
808b4780b1
|
progress towards stack mapping
|
2007-10-10 15:34:04 -06:00 |
|
Joel Dice
|
1406d6bc24
|
refactor parts of compile.cpp to improve time efficiency of java IP -> machine IP translation and to prepare for stack object reference tracking
|
2007-10-10 11:26:28 -06:00 |
|
Joel Dice
|
915ade9ccc
|
various JIT bugfixes
|
2007-10-09 13:30:01 -06:00 |
|
Joel Dice
|
defa8c62ac
|
64-bit arithmetic bugfixes
|
2007-10-09 11:15:40 -06:00 |
|
Joel Dice
|
7e0731ebdd
|
various bugfixes involving longs
|
2007-10-08 17:13:55 -06:00 |
|
Joel Dice
|
c7d7c4ca0a
|
implement additional instructions for JIT; fix bug in dispose(Thread*,Reference*)
|
2007-10-08 15:41:41 -06:00 |
|
Joel Dice
|
e32a335079
|
Merge branch 'master' of dice:git/vm
Conflicts:
src/cdecl.S
|
2007-10-04 17:17:57 -06:00 |
|
Joel Dice
|
feeaecbfd8
|
more work on JIT unwinding
|
2007-10-04 16:41:19 -06:00 |
|
Eric Scharff
|
a9fcb59e6c
|
Fix a floating point comparison bug - Gets simple SWT examples to work on
Mac OS X
|
2007-10-04 10:21:14 -06:00 |
|
Eric Scharff
|
ace36f1b15
|
Simplify code for Mac stack alignment conventions
|
2007-10-04 07:30:39 -06:00 |
|
Joel Dice
|
2135f62584
|
progress towards JIT stack unwinding
|
2007-10-03 21:19:39 -06:00 |
|
Joel Dice
|
404d996c1e
|
snapshot
|
2007-10-03 18:41:54 -06:00 |
|
Joel Dice
|
ba03aa88df
|
snapshot
|
2007-10-02 19:54:21 -06:00 |
|
Joel Dice
|
f7058f8fd6
|
snapshot
|
2007-10-02 18:22:48 -06:00 |
|
Eric Scharff
|
d2053d51d2
|
Floats are always passed as doubles in varargs calls. Properly pop them
off the stack and cast them
|
2007-10-02 09:50:08 -06:00 |
|
Joel Dice
|
68e382ca8d
|
snapshot
|
2007-10-01 18:08:17 -06:00 |
|
Joel Dice
|
45dc118ab9
|
invoke native methods using a common routine, instead of compiling code specific to each method
|
2007-10-01 09:19:15 -06:00 |
|
Joel Dice
|
7ecb5b9c30
|
fixes for various recent regressions
|
2007-09-30 10:32:17 -06:00 |
|
Joel Dice
|
7caedba26f
|
hello, world!
|
2007-09-30 09:52:21 -06:00 |
|
Joel Dice
|
ea47976aad
|
implement array load instructions
|
2007-09-29 22:07:22 -06:00 |
|
Joel Dice
|
a73f474f34
|
implement Processor::makeLocalReference()/disposeLocalReference()
|
2007-09-29 21:33:38 -06:00 |
|
Joel Dice
|
8ae36c05b7
|
lots of new instructions and bugfixes
|
2007-09-29 20:48:27 -06:00 |
|
Joel Dice
|
b0500a881c
|
implement checkcast and instanceof
|
2007-09-29 15:08:29 -06:00 |
|
Joel Dice
|
569cfa9e07
|
implement more instructions; various bugfixes
|
2007-09-29 14:24:14 -06:00 |
|
Joel Dice
|
f2ec75e202
|
handle 32-bit immediate values in Assembler.push()
|
2007-09-29 12:34:56 -06:00 |
|
Joel Dice
|
79603e284d
|
sketch of Compiler.compileNative() and ifnull instruction implementation
|
2007-09-28 17:41:03 -06:00 |
|
Joel Dice
|
ddab82996c
|
implement invokestatic, putstatic, and bipush; respect special handling of rsp and rbp in Assembler
|
2007-09-28 08:45:26 -06:00 |
|
Joel Dice
|
37ccb6cb46
|
Merge branch 'master' of dice:git/vm
|
2007-09-27 16:21:00 -06:00 |
|
Joel Dice
|
d1681c0918
|
add a few more instructions to compile.cpp and fix bugs in others; invokespecial and invokevirtual are working
|
2007-09-27 16:20:54 -06:00 |
|
Joel Dice
|
bd95ccdbd6
|
clear object header flags after copying array in Object.clone()
|
2007-09-27 16:10:29 -06:00 |
|
Eric Scharff
|
2ae6aa7ddf
|
Fix System.arraycopy when the source and dest are the same
|
2007-09-27 15:06:56 -06:00 |
|
Joel Dice
|
f1bdc4c745
|
various fixes to get JIT working on x86_64
|
2007-09-26 18:01:38 -06:00 |
|
Joel Dice
|
2f3f97d550
|
clean up compile.cpp and support both x86_64 and i386; further refactoring to support JIT
|
2007-09-26 17:23:03 -06:00 |
|
Joel Dice
|
770e48c197
|
make Object.clone() work for arrays
|
2007-09-26 13:45:52 -06:00 |
|
Joel Dice
|
1207989f72
|
fix build and runtime bugs introduced in last commit
|
2007-09-26 08:43:40 -06:00 |
|
Joel Dice
|
e7c8fb645a
|
JIT works for Instructions.java
|
2007-09-25 17:53:11 -06:00 |
|
Joel Dice
|
1c90708abf
|
bugfixes for recent refactoring effort
|
2007-09-24 07:46:48 -06:00 |
|
Joel Dice
|
8d983c8a39
|
refactoring effort to pave the way for JIT compilation
|
2007-09-23 19:39:03 -06:00 |
|
Joel Dice
|
65a3ee4277
|
superficial tweaks
|
2007-09-21 08:16:43 -06:00 |
|
Joel Dice
|
3838cd0e68
|
strip leading slashes from path in JarElement::find()/exists()
|
2007-09-21 08:15:39 -06:00 |
|
Eric Scharff
|
36f1d3206e
|
The proper extension for Mac JNI libraries is .jnilib. Hard-coded constants
have been factored to common locations. Furthermore, the LD_LIBRARY_PATH
environment variable is DYLD_LIBRARY_PATH on Mac OS X.
|
2007-09-20 10:13:41 -06:00 |
|