Joel Dice
907382bcee
fix broken field alignment in parseFieldTable which caused longs to overlap other fields on 32-bit systems in certain cases
2008-03-31 18:34:57 -06:00
Joel Dice
9cb21a29a6
fix handling of interface vtables for abstract classes
2008-03-21 17:42:36 -06:00
Joel Dice
50040b24f5
remove unused code from util.cpp
2008-03-21 14:33:44 -06:00
Joel Dice
c7a357aa5e
implement l2d and l2f in interpret.cpp
2008-03-21 13:52:09 -06:00
Joel Dice
9fe2cbff43
implement l2d and l2f byte codes
2008-03-20 18:37:58 -06:00
Joel Dice
56389dd2e1
don't populate interface vtables for abstract classes
2008-03-20 18:37:21 -06:00
Joel Dice
d8889bd4d8
protect local variables from GC in jnienv.cpp
2008-03-20 18:36:53 -06:00
Joel Dice
a388ca19ee
fix build for GCC 4.3
...
Note that this requires removing the -Wconversion flag for now. I'll
see about restoring it when I'm ready to tackle all those warnings.
2008-03-10 13:49:10 -06:00
Joel Dice
fbc5463fb1
specify Avian version via a macro defined in makefile
2008-03-06 13:30:26 -07:00
Joel Dice
9fe00836f7
fix stack mapping code to do as many passes as necessary
...
Previously, we had been doing exactly two passes over the event log to
caculate the stack object reference map at each trace point. It turns
out the correct number of passes depends on how many incorrect
assumptions we make about what the stack looks like at instructions with
multiple predecessors (i.e. targets of jumps and branches).
Each time we detect we've made one or more incorrect assumptions during
a pass, we must do another pass to correct those assumptions. That pass
may in turn reveal further incorrect assumptions, and so on.
2008-03-05 14:44:17 -07:00
Eric Scharff
e616161d5a
Fixes jar file loading for compressed jars.
...
zip files have a central directory header (which has correct information
about files) and a local file header (which sometimes does not.) Always use
the central directory versions to get accurate data.
2008-02-25 17:29:26 -07: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
Eric Scharff
1f48d39a8a
Reset debugging flag
2008-02-20 10:14:42 -07:00
Eric Scharff
8f4cb3315a
do not call dlclose on the main executable (to avoid crashes)
2008-02-20 09:41:30 -07:00
Joel Dice
85abd14137
change avium.version to avian.version
2008-02-20 08:13:15 -07:00
Joel Dice
2f1bdfeb27
remove x86.cpp
2008-02-19 19:10:18 -07:00
Joel Dice
5680f14eb1
remove compiler2.{h,cpp}, since that work has moved to a seperate branch
2008-02-19 19:03:06 -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
713ff23881
clean up sketch of new compiler
2008-02-09 13:11:37 -07:00
Joel Dice
dc04c63491
more work on new compiler
2008-02-08 16:18:57 -07:00
Joel Dice
7bb69b1c56
more work on new compiler
2008-02-07 17:24:54 -07:00
Joel Dice
4860060bf8
refine sketch of new compiler a bit
2008-02-07 16:47:48 -07:00
Joel Dice
52c447f68b
early sketch of new compiler
2008-02-07 12:04:18 -07:00
Joel Dice
94404b7f89
remove unused major collection interval code
2008-02-02 13:34:29 -07:00
Joel Dice
2346714d60
move local reference cleanup from invoke() to invokeNative2(), where it belonged all along
2008-02-01 14:17:54 -07:00
Joel Dice
55e3e8871d
trigger major GCs more aggressively under low memory conditions
2008-01-31 17:50:38 -07:00
Joel Dice
491955af05
fix recent regression in native method lookup on Windows
2008-01-30 17:09:21 -07:00
Joel Dice
eeac584474
fix thinko in invokeNative2
2008-01-30 17:08:47 -07:00
Joel Dice
34cc390286
fix uninitialized variable warning
2008-01-29 10:02:58 -07:00
Joel Dice
d693393293
remove Machine::lastLibrary and rename firstLibrary to libraries
2008-01-29 08:19:15 -07:00
Eric Scharff
2363d6e8eb
Fix debug build for Mac OS X
2008-01-28 16:35:23 -07:00
Eric Scharff
e5f95ae89d
Fix pesky compiler warning on unused variable in linux.
2008-01-28 16:22:16 -07:00
Eric Scharff
8a8a123e02
Merge branch 'master' of ssh://dice.ecovate.com/~dicej/git/vm
2008-01-28 16:17:28 -07:00
Eric Scharff
c1f3d28d24
Fixes dynamic symbol loading bug on Mac OS X.
...
On OS X, when you call dlopen() on a null library, and then call dlsym(),
the most recently loaded symbols are always used, no matter what flags
we seem to pass to dlopen(). The solution is to explicitly find the name
of the running executable, and open that as a library.
2008-01-28 16:17:22 -07:00
Dain
098e185ebe
fixed compile error, function in vm namespace needed to call function in the anonymous namespace
2008-01-28 13:24:32 -07:00
Joel Dice
d68c2e6e2c
when looking up native methods, check for both the undecorated and decorated symbol before moving on to the next library
2008-01-28 11:21:09 -07:00
Joel Dice
008ac07079
refactor native method resolution to be simpler and more robust
2008-01-28 10:27:02 -07:00
Joel Dice
de6a1ded92
ensure that we populate the interface vtables of a class which does not declare any new virtual methods but does implement new interfaces relative to its superclass
2008-01-28 08:12:06 -07:00
Joel Dice
941ca81e79
fix build breakage in windows.cpp
2008-01-25 17:48:03 -07:00
Joel Dice
8150b957c9
support JIT compiling methods with unsorted exception handler tables
2008-01-25 17:17:27 -07:00
Joel Dice
e403a625d1
second try to fix library symbol lookup
2008-01-25 16:38:26 -07:00
Joel Dice
4ea8b0a1fe
Merge branch 'master' of dice:git/vm
2008-01-25 16:25:37 -07:00
Joel Dice
35ada0ea65
search libraries for symbols in the order they are loaded
2008-01-25 16:25:30 -07:00
Joel Dice
6bca3a8665
additional tweaks to make embedded resources work on darwin
2008-01-23 10:12:56 -07:00
Joel Dice
618684de6e
support embedded resources on darwin via binaryToMacho.cpp
2008-01-23 09:56:25 -07:00
Joel Dice
73ba3fcef7
fix build breakage in stress mode
2008-01-23 09:55:29 -07:00
Joel Dice
125fe3440e
allow java.lang.Object with no virtual methods, which may occur due to code shrinking
2008-01-21 16:42:12 -07:00
Joel Dice
c9714c73f2
fix frame map calculations involving exception handlers
2008-01-20 16:03:28 -07:00
Joel Dice
422133d1ba
initialize vtables with pointers to JIT function, including native methods, since this allows code shrinkers to eliminate unused methods without confusing the VM
2008-01-20 15:05:59 -07:00