Commit Graph

702 Commits

Author SHA1 Message Date
Joel Dice
8df1118120 add a comment explaining our dummy libstdc++ functions 2008-01-11 17:34:57 -07:00
Joel Dice
48e532f8e9 add debug-fast compilation mode 2008-01-11 17:15:34 -07:00
Joel Dice
d1ec7cd0e8 remove debug logging 2008-01-11 15:19:44 -07:00
Joel Dice
f0d556b0ec fix handling of call target resolution for non-virtual calls 2008-01-11 15:16:24 -07:00
Joel Dice
a56c0ad2ef fix predicate used to determine whether to resolve address operands 2008-01-11 11:11:31 -07:00
Joel Dice
570925ad0e handle locking for synchronized native methods 2008-01-11 10:49:11 -07:00
Joel Dice
13fae991fd resolve address operands only when writing the final output 2008-01-11 09:44:16 -07:00
Joel Dice
c4fc933383 Merge branch 'master' of dice.ecovate.com:git/vm 2008-01-10 15:48:00 -07:00
Joel Dice
a9a0252209 add another test to Misc.java 2008-01-10 15:47:54 -07:00
Joel Dice
09a83e63b8 change mov to mov8 in return8 2008-01-10 15:41:57 -07:00
Joel Dice
a17cbf2880 fix reversed operand encoding for shift instructions 2008-01-10 14:56:08 -07:00
Joel Dice
4c938d496e fix 64-bit bitshifts on 32-bit systems 2008-01-10 13:47:55 -07:00
Joel Dice
15f627701b fix thinko in 8-byte shift operation implementations 2008-01-10 11:38:25 -07:00
Joel Dice
f75c9c8d33 fix build breakage in interpret.cpp 2008-01-10 10:36:07 -07:00
Eric Scharff
4bce07ea12 Adapt windows code to new memory management system (keep track of length
at time of memory free)
2008-01-10 10:31:13 -07:00
Joel Dice
13aaa14a41 use code allocator to allocate indirect caller 2008-01-09 18:51:58 -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
633990b5fe force a major GC whenever the tenured fixed object footprint doubles 2008-01-09 08:21:58 -07:00
Joel Dice
1a79fc45df change jump offset asserts to expects 2008-01-08 17:30:55 -07:00
Joel Dice
96ddae1742 assert that jump offsets fit into 32-bit words 2008-01-08 17:23:10 -07:00
Joel Dice
e3be0d197e maintain memory ceiling for tenured fixed objects and use it to trigger a major GC when appropriate 2008-01-08 17:02:27 -07:00
Joel Dice
324744d525 makefile cleanups 2008-01-08 15:05:56 -07:00
Joel Dice
811fbf0ab9 don't try to compile a method twice if it was compiled as a side-effect of initializing a class 2008-01-08 14:23:49 -07:00
Joel Dice
cfc959a3d2 invoke static initializers more lazily 2008-01-08 12:36:34 -07:00
Joel Dice
551addc638 make array bounds checking optional; add comments describing stack mapping algorithm 2008-01-08 10:10:24 -07:00
Joel Dice
c8472c4d30 minimize state tracked by stack mapping algorithm 2008-01-08 08:24:57 -07:00
Joel Dice
ef06be3904 fix bad machine code generated for mov2 2008-01-07 18:33:49 -07:00
Joel Dice
6a314ee65d Merge branch 'master' of dice:git/vm 2008-01-07 16:30:51 -07:00
Joel Dice
74a7da3010 implement and8, or8, and xor8 for 32-bit systems 2008-01-07 16:30:45 -07:00
Eric Scharff
466c3bb06e Changes for signal contexts in Mac OS X 10.5 (Leopard) 2008-01-07 16:20:48 -07:00
Joel Dice
8dc674b3d2 remove redundant line in multianewarray 2008-01-07 16:09:55 -07:00
Joel Dice
72f7115323 add FORCE_ALIGN attribute to non-trivial functions called from Java land 2008-01-07 15:49:34 -07:00
Joel Dice
2cda000725 fix code ordering bug in compile() which caused us to calculate the stack map incorrectly; logging tweak 2008-01-07 15:04:53 -07:00
Joel Dice
259dd643e0 fix over-agressive state reset in state mapping code; logging tweaks 2008-01-07 14:32:41 -07:00
Joel Dice
25f12ca40a set Verbose=false 2008-01-07 10:16:41 -07:00
Joel Dice
888dce8f3c bugfixes and cleanups for new stack mapping code 2008-01-07 09:01:35 -07:00
Joel Dice
a755368add sketch of new stack mapping algorithm 2008-01-07 07:51:07 -07:00
Joel Dice
a8e9cc521c move some generally useful bitset functions from heap.cpp to common.h 2008-01-06 12:21:38 -07:00
Joel Dice
7a0079e258 add object lifetime tests to GC.java, which currently fail with JIT 2008-01-06 12:20:30 -07:00
Joel Dice
6057ffd693 whitespace tweak 2008-01-03 19:17:42 -07:00
Joel Dice
89b60bfba0 fix incorrect encoding of neg instruction 2008-01-03 19:16:29 -07:00
Joel Dice
c119d4362e fix swapped machine codes for sar/shr instructions 2008-01-03 17:29:33 -07:00
Joel Dice
e30302722e Merge branch 'master' of dice.ecovate.com:git/vm
Conflicts:

	src/compile.cpp
2008-01-03 16:54:35 -07:00
Joel Dice
4bda925e08 fix thinko in Frame::mapSizeInWords; code cleanup 2008-01-03 16:53:37 -07:00
Joel Dice
ce2f5dd375 fix use of clobbered stack register in multianewarray 2008-01-03 14:28:29 -07:00
Joel Dice
e81a534986 misc makefile tweaks 2008-01-03 12:49:42 -07:00
Joel Dice
2d6d69a573 fix thinko in invokeNative2 2008-01-03 12:49:07 -07:00
Joel Dice
651a27f73e sign-extend array indexes from 32 to 64 bits on amd64; provide useful messages for certain runtime exceptions 2008-01-03 11:37:00 -07:00
Joel Dice
6cecdc8295 relax rules for doing major collection; fix overconstrained assertion 2008-01-03 10:09:43 -07:00
Joel Dice
86704591e7 Throwable.initCause should return 'this' 2008-01-03 10:08:33 -07:00