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
74295bb707
interpret avian.bootstrap property as a complete file name
2008-03-31 12:57:49 -06:00
Joel Dice
9bcc4dd4ed
fix build for OSX 10.4 and below
2008-03-31 11:58:40 -06:00
Joel Dice
c37f0dcf18
fix darwin build
2008-03-30 22:23:51 -06:00
Joel Dice
357bd29460
support building Avian as a self-contained dynamic library
2008-03-30 21:43:43 -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
a51c4cef39
bugfixes
2008-03-16 13:38:43 -06:00
Joel Dice
684b402e82
bugfixes and new instructions
2008-03-15 17:54:20 -06:00
Joel Dice
420a054fd8
support 1- and 2-byte moves to memory
2008-03-15 15:02:19 -06:00
Joel Dice
8141fc21b4
release base and index values of AbstractMemoryValue if necessary; bugfixes
2008-03-15 14:44:14 -06:00
Joel Dice
6bf0ca5bd9
various bugfixes and new instructions
2008-03-15 14:24:04 -06:00
Joel Dice
6a9fbc0c17
allow assembler to acquire and release temporary registers; new machine instruction implementations; bugfixes
2008-03-13 17:43:11 -06:00
Joel Dice
406f173982
handle constant array lengths and indexes properly; various bugfixes
2008-03-13 14:50:56 -06:00
Joel Dice
7cd79736c2
fix tracking of stack operations in compile.cpp
2008-03-11 10:57:35 -06:00
Joel Dice
c5b8b83cc7
clean up code for optimizing stack operations
2008-03-11 10:40:28 -06:00
Joel Dice
9e2e614a15
various fixes to get invokevirtual working
2008-03-10 16:37:21 -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
0fe748c3a1
avoid unecessary mov instructions
2008-03-10 07:29:42 -06:00
Joel Dice
11dea0ad8e
don't bother calling methods which are known do nothing
2008-03-10 07:28:21 -06:00
Joel Dice
888836f8cd
use push and pop for stack operations instead of mov
2008-03-09 15:27:51 -06:00
Joel Dice
7cfb89bd2a
Merge branch 'master' into compiler
2008-03-09 11:31:55 -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
Joel Dice
3317149cd2
Merge branch 'master' into compiler
...
Conflicts:
src/x86.cpp
2008-02-26 17:56:35 -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
e8ed2a4749
various bugfixes in new compiler
2008-02-17 15:29:04 -07:00
Joel Dice
d654c943f3
various bugfixes and tweaks in new compiler, primarily related to duplicating stack operands
2008-02-17 13:57:40 -07:00
Joel Dice
6271f878e8
include function prologue and epilogue when compiling
2008-02-12 08:21:51 -07:00
Joel Dice
fa513beb2f
rework compiler interface to explicitly accept a size parameter for each operation where relevant
2008-02-11 19:06:12 -07:00
Joel Dice
b9fa7179d9
more work on new compiler; addition now works
2008-02-11 17:20:32 -07:00
Joel Dice
5b2f351f01
adapt compile.cpp to new compiler
2008-02-11 10:21:41 -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