Joel Dice
f698d347ac
eliminate conditional when calculating object size
2007-07-01 15:47:26 -06:00
Joel Dice
38cea04322
progress towards thread support
...
This includes support for using the least significant bits of the class
pointer to indicate object state, which we'll use to indicate the
presence of a monitor pointer, among other things.
2007-07-01 15:34:22 -06:00
Joel Dice
051e3bc7a8
respect string offset and length when printing exception message
2007-06-29 20:45:45 -06:00
Joel Dice
b33f0c311d
push method frame for native invocations (so we'll see them in stack traces)
2007-06-29 20:41:49 -06:00
Joel Dice
4020f13fb0
update references to class in fields and methods in updateBootstrapClass()
2007-06-29 20:38:16 -06:00
Joel Dice
b8e009075c
stack trace work
2007-06-29 20:39:01 -06:00
Joel Dice
c34ee64988
classloading bugfixes and stack trace work
2007-06-29 19:37:45 -06:00
Joel Dice
e529d60a69
hello, world
2007-06-29 10:42:39 -06:00
Joel Dice
2057e72956
more JNI work
2007-06-28 20:58:48 -06:00
Joel Dice
f0bc4dbe76
various bugfixes
2007-06-24 20:20:35 -06:00
Joel Dice
cd2c1a2836
JNI up the wazoo
2007-06-24 20:02:24 -06:00
Joel Dice
400b3633d7
more JNI work
2007-06-24 19:34:07 -06:00
Joel Dice
f606f2d30a
more progress on JNI
2007-06-24 15:49:04 -06:00
Joel Dice
ef806e73f0
progress on JNI and bootstrap class handling
2007-06-24 13:57:00 -06:00
Joel Dice
9dc8b0529d
snapshot
2007-06-23 19:39:49 -06:00
Joel Dice
f68f455d59
prepare for native method support
2007-06-22 17:43:31 -06:00
Joel Dice
137fdcb69e
specify a more conservative initial capacity in initNextGen{1,2}()
2007-06-22 17:29:15 -06:00
Joel Dice
39bbcc03eb
refactor assertions so they can be disabled easily at compile time; fix a couple of method invocation bugs
2007-06-22 17:17:13 -06:00
Joel Dice
5ee38e259a
enable large object support; various GC bugfixes and tweaks
2007-06-22 16:47:57 -06:00
Joel Dice
4d202e4945
fix iinc instruction to use set() instead of direct assignment; add Thread::HeapSizeInWords and Thread::StackSizeInWords
2007-06-22 15:31:45 -06:00
Joel Dice
3a6da507ec
various GC bugfixes
2007-06-22 14:55:11 -06:00
Joel Dice
09f6a34510
snapshot
2007-06-21 21:16:42 -06:00
Joel Dice
d5ce307a2a
switch to a linked heap implementation
2007-06-21 20:13:17 -06:00
Joel Dice
3238b34723
fix thinko in visitRoots()
2007-06-21 17:23:43 -06:00
Joel Dice
c1d70499c2
add Debug and Verbose constants to heap.cpp
2007-06-21 16:51:55 -06:00
Joel Dice
e794fdb57f
fix jump calculation for various instructions
2007-06-21 16:50:52 -06:00
Joel Dice
31e2da3e05
various GC bugfixes
2007-06-21 16:23:35 -06:00
Joel Dice
8d0c5f4186
snapshot
2007-06-21 14:44:35 -06:00
Joel Dice
1992482236
snapshot
2007-06-21 13:43:33 -06:00
Joel Dice
29f9bb84ca
snapshot
2007-06-21 12:35:24 -06:00
Joel Dice
95c4bff51b
lots of bugfixes
2007-06-20 19:38:02 -06:00
Joel Dice
91b9dc7382
various bugfixes
2007-06-20 15:27:22 -06:00
Joel Dice
4e07acb26c
it builds!
2007-06-20 13:20:25 -06:00
Joel Dice
d4d155c834
snapshot
2007-06-20 11:42:13 -06:00
Joel Dice
1a05eb2739
snapshot
2007-06-20 10:58:35 -06:00
Joel Dice
a6e79cc417
snapshot
2007-06-19 23:16:43 -06:00
Joel Dice
459acc3419
snapshot
2007-06-19 22:26:36 -06:00
Joel Dice
caac00e5ff
start rough sketch of GC code in heap.cpp
2007-06-19 20:28:31 -06:00
Joel Dice
36152603f4
provide bounds checking for array indexing; store bootstrap types in Machine::types
2007-06-18 15:13:21 -06:00
Joel Dice
6756ade3bd
update generated type code and fix most link errors
2007-06-18 13:23:44 -06:00
Joel Dice
d595a2fd61
compiles but doesn't link
2007-06-17 22:25:42 -06:00
Joel Dice
1cb866aac1
clean up sketch of parseClass() and friends; etc.
2007-06-17 22:09:02 -06:00
Joel Dice
f99425d944
snapshot
2007-06-17 17:25:58 -06:00
Joel Dice
4493fe824e
snapshot
2007-06-17 16:03:27 -06:00
Joel Dice
1301a6a1c8
snapshot
2007-06-16 15:39:05 -06:00
Joel Dice
9e356c1b40
sketch parseClass()
2007-06-15 19:02:24 -06:00
Joel Dice
bb2494be83
use ACQUIRE_RAW instead of ACQUIRE in set(), since it will only block for a bounded interval; rename some Heap methods
2007-06-15 10:00:08 -06:00
Joel Dice
1d02290ed1
add call To ClassFinder::free() in resolveClass()
2007-06-14 20:03:33 -06:00
Joel Dice
1853ea825e
change Heap::markTenured() return type to void
2007-06-14 18:51:48 -06:00
Joel Dice
f5cb9b3bf1
implement/update ACQUIRE and ACQUIRE_RAW macros; refine set() implementation
2007-06-14 18:50:55 -06:00
Joel Dice
375715fb72
simplify byteArrayEqual()
2007-06-14 17:56:40 -06:00
Joel Dice
8d7cd5482f
resolveClass() sketch
2007-06-14 17:55:06 -06:00
Joel Dice
7904fa40a3
finish sketch of resolveField() and resolveMethod() implementations
2007-06-13 20:41:59 -06:00
Joel Dice
ef48f14839
sketch of resolveField() and resolveMethod() implementations
2007-06-13 20:12:28 -06:00
Joel Dice
5e225c94a3
implement helper methods for invokespecial; add thread type
2007-06-13 08:03:08 -06:00
Joel Dice
8cc54280d9
implement more helper functions; add fields to class, field, and method types
2007-06-11 17:40:24 -06:00
Joel Dice
587fb18685
fix thinko in memset() call
2007-06-08 20:33:26 -06:00
Joel Dice
a29dc10313
implement instanceOf(); add interface type; etc.
2007-06-08 20:29:56 -06:00
Joel Dice
86b7a75977
implement set(); minor tweaks elsewhere
2007-06-08 08:23:04 -06:00
Joel Dice
26bfa24c16
add various bootstrap types; implement more helper functions; add LIKELY() and UNLIKELY() macro invocations where appropriate; add PROTECT() macro
2007-06-07 18:23:12 -06:00
Joel Dice
94338e15a8
implement makeJString(); minor tweaks elsewhere
2007-06-06 18:30:16 -06:00
Joel Dice
48e49f1fa1
more build fixes
2007-06-05 20:24:09 -06:00
Joel Dice
2176c32cee
lots of build fixes
2007-06-05 18:41:04 -06:00
Joel Dice
45f5417827
snapshot
2007-06-04 18:28:52 -06:00
Joel Dice
35de3dc128
copy input.h and output.h from mess project
2007-06-04 17:48:35 -06:00
Joel Dice
2d44143944
type-generator now builds
2007-06-04 17:39:59 -06:00
Joel Dice
f35d89cfa4
more type-generator refinements
2007-06-04 08:16:17 -06:00
Joel Dice
e95478650c
convert PUSH and POP macros to inline functions
2007-06-04 07:12:22 -06:00
Joel Dice
f354e410c4
frame should have handle to method, not just code
2007-06-03 17:18:05 -06:00
Joel Dice
3ba88c12b0
copy makefile, stdc++.cpp, and type-generator.cpp from mess project
...
and began customizing them for this project
2007-06-03 17:16:07 -06:00
Joel Dice
4ecf7917cc
sketch Machine and Thread classes; refine allocation and thread state transitions
2007-06-02 20:00:23 -06:00
Joel Dice
f6e369c424
add public access specifiers to Heap::Vistor and Heap::Iterator
2007-06-02 19:58:47 -06:00
Joel Dice
d0a6a78022
add system.h for interfacing with system-level features
2007-06-02 19:57:37 -06:00
Joel Dice
253723b5cc
add common.h for common includes, macros, etc.
2007-06-02 19:56:57 -06:00
Joel Dice
3a2f478521
add heap.h
2007-06-02 17:36:55 -06:00
Joel Dice
c5ed0cf810
snapshot
2007-06-01 18:06:06 -06:00
Joel Dice
a8ca8c7512
finish sketch of essential instructions
2007-05-30 18:29:07 -06:00
Joel Dice
81c0e507f7
snapshot
2007-05-29 18:08:10 -06:00
Joel Dice
9076e2fbfa
snapshot
2007-05-25 08:48:07 -06:00
Joel Dice
9bc6b0db0b
snapshot
2007-05-21 18:05:29 -06:00
Joel Dice
9ed7dbb3d5
initial commit
2007-05-21 09:47:44 -06:00