Commit Graph

1310 Commits

Author SHA1 Message Date
207f093464 never trigger a GC due to an immortal allocation 2008-11-23 11:48:39 -07:00
fb9b2bf173 avoid creating garbage when iterating over hashmaps 2008-11-22 16:38:41 -07:00
4392b04fd0 avoid creating unecessary garbage in treeInsertNode and friends 2008-11-22 16:25:35 -07:00
6162dfafbb increase heap pool size and fixed footprint threshold constants based on performance profiling and experimentation (second try) 2008-11-22 14:48:10 -07:00
8a7852172e increase heap pool size and fixed footprint threshold constants based on performance profiling and experimentation 2008-11-22 14:47:18 -07:00
2e2925c321 fix backwards logic in treeMapInsert which prevented correct balancing 2008-11-22 14:14:52 -07:00
6500f1eff6 initial work to support boot image creation and use 2008-11-21 16:20:35 -07:00
e98da8440e minor tweak to find function in heapdump.cpp to return 0 where we were returning false (which amounts to the same thing but is less confusing) 2008-11-19 18:09:02 -07:00
3d9e508e3e fix regression in last commit 2008-11-17 08:44:35 -07:00
9aee242408 Merge branch 'powerpc' of oss:/var/local/git/avian into powerpc
Conflicts:

	src/compiler.cpp
2008-11-17 08:22:07 -07:00
7ea5a4a64f avoid inifinite recursion in trySteal 2008-11-17 08:20:48 -07:00
92a8a4d83b clean up subroutine code in wake of merge from master branch 2008-11-15 18:03:43 -07:00
9b6d4fdeab Merge branch 'master' of oss.readytalk.com:/var/local/git/avian into powerpc
Conflicts:

	src/compile.cpp
2008-11-15 17:49:08 -07:00
dc2700d913 ensure that the saved exception in a finally block is visited during GC when the jsr instruction is used 2008-11-15 17:28:45 -07:00
fb770d10fb implement jsr/ret support
The Subroutine test won't pass due to a bug in the stack mapping code
such that objects may be missed during GC.
2008-11-13 17:59:21 -07:00
fae0ccfe96 fix unused parameter warnings 2008-11-11 18:09:45 -07:00
6f5613ebd9 minor code cleanup in MoveEvent::compile 2008-11-11 17:48:21 -07:00
191bfb6141 fix 4-to-8 byte sign extensions for ia32 and clean up MoveEvent; all tests now pass on ia32 2008-11-11 17:39:26 -07:00
acfd9689b2 Merge branch 'master' of oss:/var/local/git/avian into powerpc
Conflicts:

	makefile
	src/assembler.h
	src/compile.cpp
	src/compiler.cpp
	src/compiler.h
	src/finder.cpp
2008-11-11 12:15:19 -07:00
e859502811 handle unresolved constants in moveCM 2008-11-11 11:56:43 -07:00
671fd1c0f9 set popIndex for stack arguments in CallEvent constructor 2008-11-11 11:56:23 -07:00
0bef625500 fix thinko in logCompile 2008-11-11 09:17:11 -07:00
c80eb51c17 Merge branch 'master' into powerpc
Conflicts:

	makefile
	src/assembler.h
	src/compile.cpp
	src/compiler.cpp
	src/compiler.h
	src/finder.cpp
2008-11-11 08:21:48 -07:00
2304a656cf in releaseRegister, if the register is not the exclusive site of a value, steal it 2008-11-10 21:25:36 -07:00
54cda3ca61 specify register contraints for Negate instruction in MyArchitecture::plan 2008-11-10 20:23:33 -07:00
96a7c71c30 fix loading 8-byte values on 32-bit systems 2008-11-10 19:12:36 -07:00
81d532c4f0 handle overlap cases in moveRR 2008-11-10 19:11:32 -07:00
5fc9ad058b more bugfixes; all tests pass on amd64 2008-11-10 17:07:44 -07:00
00d8142de9 various bugfixes; all but one test are passing on amd64 2008-11-09 16:56:37 -07:00
000aeb25c1 handle case where first instruction is the target of a branch properly 2008-11-08 16:21:30 -07:00
decd24965a implement multiplyCR and divideCR 2008-11-08 15:42:26 -07:00
61539bae31 fix stack mapping bugs which broke GC 2008-11-08 15:36:38 -07:00
312539af64 fix moves involving sign or zero extension 2008-11-08 13:47:26 -07:00
f01f4441d9 various bugfixes and instructions implemented to get more tests passing 2008-11-06 17:39:38 -07:00
1ba497d90a fix Exceptions test for amd64 2008-11-02 15:25:51 -07:00
04da77e95b snapshot 2008-11-02 13:35:35 -07:00
3e81405a33 snapshot 2008-11-01 16:16:18 -06:00
dd4dc18916 snapshot 2008-11-01 13:14:13 -06:00
6f1d02dae7 remove the libstdc++ dependency once and for all
The trick is to make all destructors non-virtual.  This is safe because
we never use the delete operator, which is the only case where virtual
destructors are relevant.  This is a better solution than implementing
our own delete operator, because we want libraries loaded at runtime to
use the libstdc++ version, not ours.
2008-10-28 15:40:50 -06:00
88a1faa2a2 set global system pointer to null in MySystem::dispose in windows.cpp 2008-10-28 12:15:27 -06:00
01cc868797 remove debug code from builtin.cpp 2008-10-27 15:39:14 -06:00
4d613f404f use dbghelp.dll to generate crash dump file on Windows XP and later
The dump is written to the directory specified via the avian.crash.dir
system property if that property is set and is not written otherwise.
2008-10-27 15:13:27 -06:00
d20ee74d79 fix stack frame offset calculations for 64-bit values; insert dummy events for instructions which start with stack activity 2008-10-24 20:12:02 -06:00
003afdc918 fix heap dump facility to visit all roots 2008-10-24 18:48:10 -06:00
3b67417695 heap dump bugfixes 2008-10-22 18:05:34 -06:00
d25a6098e6 remove support for hiding constructors and accessors in type-generator.cpp
This feature is not being used, and it may be the cause of this bug:

  http://groups.google.com/group/avian/browse_thread/thread/955aa1479e9fddca
2008-10-22 08:39:27 -06:00
e2f3e3da77 enter active state at start of Java_java_lang_Runtime_dumpHeap 2008-10-21 17:49:32 -06:00
0459a7701c enter exclusive state before dumping heap 2008-10-21 17:47:38 -06:00
6a5116e7a7 implement primitive heap dump facility for memory profiling, accessible via Runtime.dumpHeap
The proper way to do this is to implement a subset of JVMTI, but this
will do the job for now.
2008-10-21 17:38:20 -06:00
7d6ca28b2f snapshot 2008-10-18 18:15:57 -06:00