Commit Graph

424 Commits

Author SHA1 Message Date
Joel Dice
f5490b800a Merge branch 'master' of oss.readytalk.com:/var/local/git/avian 2009-11-28 11:18:13 -07:00
Joel Dice
bd72745ff9 fix off-by-one error in intrinsic() 2009-11-27 21:01:27 -07:00
Joel Dice
9f14d63592 initialize MyProcessor::getStackTrace::Visitor::trace in case visit is never called 2009-11-24 19:15:27 -07:00
jet
d901653979 Merge branch 'master' into wip
Conflicts:

	src/compile.cpp
2009-10-29 14:23:20 -06:00
jet
d3d228e69b moduloInt + arm work 2009-10-29 14:14:44 -06:00
jet
e00fc5d91a ARM port work 2009-10-29 10:12:30 -06:00
Joel Dice
c8d5c1faed visit all frame locations in resolveOriginalSites
Previously, we only visited frame locations containing values, but
this invited the possibility of reusing the same site for two
locations in some cases.
2009-10-26 17:59:20 -06:00
Joel Dice
3b4be3decd defer to helper thunk for frem and drem 2009-10-24 19:29:20 -06:00
Joel Dice
95c3f37bfb fix various bugs involving doubles on 32-bit systems 2009-10-24 17:18:56 -06:00
Joel Dice
c044781807 fix powerpc bootimage build 2009-10-20 08:20:49 -06:00
Joel Dice
1a63b72b41 clean up float-vs.-int tracking in constant pools 2009-10-17 20:11:03 -06:00
Joel Dice
15020d77a6 refactor intrinsic support
This ensures that the low-level, architecture specific code need not
be aware of the semantics and names of Java methods.
2009-10-17 19:26:14 -06:00
Joel Dice
f702795178 fix integer truncation bug 2009-10-17 18:35:19 -06:00
Joel Dice
cec6444911 fix bootimage build for case where the JIT code area is too far from the AOT code area to do immediate-offset jumps between them 2009-10-17 18:18:03 -06:00
Joel Dice
b878b84d32 set DebugCompile to false in compile.cpp 2009-10-11 16:05:37 -06:00
Joel Dice
44a6620aa1 disable use of SSE when compiling ahead-of-time 2009-10-10 17:46:43 -06:00
Joel Dice
622b3d1c4e replace compare and branch instructions with combined versions
This allows the assembler to see the operand types of the comparison
and the condition for jumping in the same operation, which is
essential for generating efficient code in cases such as
multiple-precision compare-and-branch.
2009-10-10 15:03:23 -06:00
Joel Dice
609a1a9633 snapshot 2009-10-07 00:50:32 +00:00
Joel Dice
4f78783ef1 various bugfixes for SSE-based floating-point support 2009-10-05 14:25:12 +00:00
Joel Dice
d25da6116a snapshot 2009-10-04 22:10:36 +00:00
Joel Dice
5dad9bddd6 snapshot 2009-10-04 19:56:48 +00:00
Joel Dice
6cef085d7e snapshot 2009-09-26 19:43:44 +00:00
Joel Dice
325f93b4d1 Merge branch 'master' into wip
Conflicts:

	src/compile.cpp
	src/compiler.cpp
	src/machine.h
	src/x86.cpp
2009-09-20 15:43:32 -06:00
Joel Dice
7aa906d97b support runtime-visible annotations and java.lang.reflect.Proxy 2009-09-18 18:01:54 -06:00
Joel Dice
bf2b17cfa6 fix misspelled comment 2009-09-04 17:08:45 -06:00
Joel Dice
b0ba70866e fix incorrect line numbers in NPE traces 2009-09-04 15:09:40 -06:00
Joel Dice
6519047342 fix bootimage build 2009-09-03 09:06:04 -06:00
Joel Dice
73dc058c14 implement StackTraceElement.getFileName properly 2009-08-27 16:28:44 -06:00
Joel Dice
1a0eef7e2d add support for building with MSVC on Windows 2009-08-26 18:26:44 -06:00
Joel Dice
0a2e611baa handle case of null thread local in SegFaultHandler::handleSignal 2009-08-18 15:47:08 -06:00
Joel Dice
c4edabdc02 implement ClassLoader.resolveClass and ensure class is linked in e.g. Class.getMethods; minor bugfixes 2009-08-18 14:26:28 -06:00
Joel Dice
3facd3f735 treat SoftReferences as WeakReferences; do vtable or interface table lookups as necessary in MyProcessor::invoke; various bugfixes 2009-08-13 09:17:05 -06:00
Joel Dice
61cb8b3deb handle zero-length lookup tables in lookupswitch 2009-08-12 19:32:12 -06:00
Josh warner
32167168f8 fixed incorrect opSize bug for 64-bit platforms 2009-08-11 13:25:22 -06:00
Joel Dice
83b0a217e0 disable debug trap 2009-08-11 09:40:54 -06:00
Joel Dice
336e822ba9 remove debug logging 2009-08-11 09:23:38 -06:00
Josh warner
af4d82ef7e Merge branch 'master' of git://oss.readytalk.com/avian 2009-08-10 13:42:57 -06:00
Josh warner
1d3ef1fc43 Merge branch 'master' of git://oss.readytalk.com/avian, fixed problems that occured in broader testing
Conflicts:
	src/compile.cpp
	src/compiler.cpp
	src/powerpc.cpp
	src/x86.S
	src/x86.cpp
2009-08-10 13:20:23 -06:00
Joel Dice
001000364d add classloader parameter to functions which may directly or indirectly load classes; include methods inherited from interfaces (but not explicitly declared) in method tables and virtual tables of abstract classes 2009-08-10 07:56:16 -06:00
Joel Dice
2da6980eb5 print intptr_t's as pointers in compareIpToMethodBounds to avoid printf compatibility issues 2009-08-07 16:27:24 -06:00
Josh warner
f8bbc609e8 corrected debug messages 2009-08-06 10:32:00 -06:00
Josh warner
7483fa154d added floating point support, instrinsics support 2009-08-06 10:01:57 -06:00
Joel Dice
ad66ae2691 disable debug logging 2009-07-27 18:09:12 -06:00
Joel Dice
0447d9bed3 use __MINGW32__ instead of __WINDOWS__ in x86.cpp and assume Linux if it's not defined 2009-07-27 07:49:54 -06:00
Joel Dice
f869e5be21 Merge branch 'master' into gnu
Conflicts:

	classpath/java/util/TreeSet.java
2009-07-25 18:38:57 -06:00
Joel Dice
d3a249a3fa Merge branch 'master' of oss.readytalk.com:/var/local/git/avian 2009-07-25 18:36:27 -06:00
Joel Dice
08e9a99cb5 don't abort if pthread_kill fails in MySystem::visit 2009-07-24 19:03:33 -06:00
Joel Dice
3787985b25 implement basic finalization support
This implementation does not conform to the Java standard in that
finalize methods are called from whichever thread happens to be garbage
collecting, and that thread may hold locks, whereas the standard
guarantees that finalize will be run from a thread which holds no locks.
Also, an object will never be finalized more than once, even if its
finalize method "rescues" (i.e. makes reachable) the object such that it
might become unreachable a second time and thus a candidate for
finalization once more.  It's not clear to me from the standard if this
is OK or not.

Nonwithstanding the above, this implementation is useful for "normal"
finalize methods which simply release resources associated with an
object.
2009-07-21 18:57:55 -06:00
Joel Dice
afdab27e02 backport GC safety fixes from gnu branch 2009-07-20 14:32:25 -06:00
Joel Dice
514d0bf7e5 fix deadlocks and other misbehaviors in class initialization code 2009-07-20 14:12:38 -06:00