Joel Dice
75b3bf98ab
pick only unfrozen frame sites in save
2008-12-20 11:13:58 -07:00
Joel Dice
1dea1d4800
Merge branch 'master' of oss.readytalk.com:/var/local/git/avian
2008-12-18 20:23:21 -07:00
Joel Dice
bd89b8e00a
check for null array in HashMapIterator::find
2008-12-18 20:23:08 -07:00
Joel Dice
84258604a5
Merge branch 'master' of oss.readytalk.com:/var/local/git/avian
2008-12-18 20:10:36 -07:00
Joel Dice
368c804bb7
bootimage-object should depend on binaryToMacho
2008-12-18 20:10:25 -07:00
Joel Dice
21df2e9153
update readme.txt to indicate new binaryToMacho arguments
2008-12-18 20:01:18 -07:00
Joel Dice
2622773eb4
support bootimage build on OS X
2008-12-18 19:52:03 -07:00
Joel Dice
e55b59905e
Merge branch 'master' of oss.readytalk.com:/var/local/git/avian
2008-12-18 16:32:23 -07:00
Joel Dice
5e727c8c5d
throw an error if a volatile field is encountered, since we don't yet support them properly
2008-12-18 16:32:18 -07:00
Joel Dice
7ce35b212f
fix GCC 4.0.1 uninitialized value warning
2008-12-18 10:10:19 -07:00
Joel Dice
a40ae85588
clear sites from dead value in removeBuddy
2008-12-15 18:21:01 -07:00
Joel Dice
8819d01522
only set Context::forfeitedSite if value is live
2008-12-15 17:42:32 -07:00
Joel Dice
39358e6652
update junction read based on liveness of local value on first visit to junction, not stub read value
2008-12-15 07:35:19 -07:00
Joel Dice
7f4bd51464
don't use trySteal when moving sites between buddies
2008-12-13 13:54:26 -07:00
Joel Dice
4717e94fa3
remove value buddies after setting sites to junction sites, not after populating junction sites
...
This mirrors how snapshots are captured and restored for branch events.
Also, switch back to resolving junction sites before capturing fork
snapshots so we capture the true state of each value immediately before
the branch.
2008-12-13 12:59:02 -07:00
Joel Dice
d50febe088
various control-flow related bugfixes
2008-12-11 18:09:36 -07:00
Joel Dice
8b2a6f85fc
remove divideCR and remainderCR
...
This forces the compiler to explicitly move the constant operand into
a register, avoiding the possibility that AX or DX might be unavailable
when the assembler needs them.
2008-12-11 18:08:16 -07:00
Joel Dice
c479bccdb4
support cross-platform bootimage build (as long as the build arch matches the target arch
2008-12-04 17:24:38 -07:00
Joel Dice
aa7b47eec4
fix merge confict fallout in heapdump.cpp
2008-12-04 14:35:25 -07:00
Joel Dice
7d68c9b0a5
Merge branch 'bootimage' of oss.readytalk.com:/var/local/git/avian
...
Conflicts:
src/heapdump.cpp
2008-12-04 14:29:17 -07:00
Joel Dice
58a90f2b84
fix regressions for non-bootimage case
2008-12-03 19:09:57 -07:00
Rich Scott
db3434001f
Use mingw32 'strip' when compiling for Windows.
...
This fixes the error when using /usr/bin/strip on
Ubuntu 8.10 when it believes the target file is of
an "ambiguous format".
2008-12-03 13:12:49 -07:00
Joel Dice
93d4fbc43d
fix platform=windows and process=interpret builds
2008-12-03 08:44:07 -07:00
Joel Dice
457c3d135e
return Tenured from MyHeap::status if the object resides in the immortal heap
2008-12-02 19:41:22 -07:00
Joel Dice
4098368cb9
fix non-debug build of compile.cpp
2008-12-02 19:39:56 -07:00
Joel Dice
851efc8d10
handle case of unresolved promise in compareCR and compareCM
2008-12-02 19:39:09 -07:00
Joel Dice
bcfdc03631
fix build breakage in heapdump.cpp
2008-12-02 19:38:32 -07:00
Joel Dice
4ec853d1bc
include heapwalk.o in libavian.a if bootimage=true
2008-12-02 19:37:16 -07:00
Joel Dice
d4363d250a
mark and fix up absolute addresses in boot image code
2008-12-02 09:45:20 -07:00
Joel Dice
25ade1484a
lots of bugfixes and refactoring
2008-12-01 19:38:00 -07:00
Joel Dice
4a1dd3a8f7
specify writable and executable section for boot image
2008-12-01 19:35:52 -07:00
Rich Scott
f13bf44e87
Check return value of fwrite() calls.
...
This is to satisfy GCC 4.3.2 (on Ubuntu 8.10), which requires it.
2008-12-01 16:53:34 -07:00
Joel Dice
eaf30eb909
fix static class initialization when using a boot image
2008-11-29 21:58:09 -07:00
Joel Dice
e44f326377
various bugfixes
2008-11-29 18:39:42 -07:00
Joel Dice
0ec5ad3701
update makefile to optionally build and use a boot image; various bugfixes
2008-11-29 16:08:14 -07:00
Joel Dice
0ef2ee1d02
refactor Segment::Map to support map data which is not allocated as part of the segment data
2008-11-29 13:37:03 -07:00
Joel Dice
702525fd32
support immortal heap area in heap.cpp
2008-11-28 19:31:06 -07:00
Joel Dice
b8056d905c
fix bugs in allocating and populating method object pools
2008-11-28 18:23:01 -07:00
Joel Dice
80815d35f7
fix fixed object tracking in heap.cpp
2008-11-28 18:22:09 -07:00
Joel Dice
4d1af63ed2
initial work on booting from boot image
2008-11-28 15:02:45 -07:00
Joel Dice
d22a9ab270
visit constants in visitRoots so they are included in the final heap image
2008-11-28 11:33:11 -07:00
Joel Dice
02afbd1fa1
handle unresolved constants in moveCM
2008-11-27 21:58:32 -07:00
Joel Dice
6dc181fad5
move allocation zone from makeCodeImage to writeBootImage so it stays in scope until after updateConstants is called
2008-11-27 21:58:04 -07:00
Joel Dice
a8a030140c
various bugfixes
2008-11-27 21:44:04 -07:00
Joel Dice
f698c24ea6
delay resolving method call offsets until all methods have been compiled when creating a boot image
2008-11-27 13:59:40 -07:00
Joel Dice
264779ed2a
copy site if necessary to avoid chaining to another site in resolveJunctionSite
2008-11-25 19:23:47 -07:00
Joel Dice
f9145528c8
do constant-to-memory movq in one instruction on amd64 when possible
2008-11-25 19:22:21 -07:00
Joel Dice
61ecb56e21
Merge branch 'master' of oss:/var/local/git/avian into powerpc
2008-11-25 16:19:21 -07:00
Joel Dice
fdb9c05ac6
avoid uninitialized value warnings from valgrind when DebugFrameMaps is true
2008-11-25 16:01:30 -07:00
Joel Dice
58a9718d82
clean stack sites more aggressively after function calls to avoid GC bugs
2008-11-25 16:00:40 -07:00