twisti [Sat, 19 Jun 2004 12:44:12 +0000 (12:44 +0000)]
- added: throw_exception, throw_exception_exit, throw_main_exception and
throw_main_exception_exit, which all of them use
throw_exception_exit_intern
- eager loading stuff
twisti [Sat, 19 Jun 2004 12:42:54 +0000 (12:42 +0000)]
Added: throw_exception, throw_main_exception, throw_main_exception_exit
twisti [Sat, 19 Jun 2004 12:32:57 +0000 (12:32 +0000)]
- added compatibility flags: -cp, -Xmx, -Xms (with K, M)
- usage of throw_main_exception_exit
- don't exit after an exception in the main method (2 reasons: we use
Runtime.exit() and maybe other threads are running)
twisti [Sat, 19 Jun 2004 12:26:33 +0000 (12:26 +0000)]
Added initializing flag to classinfo structure. This is used by the
compiler to prevent circularity in class_init's.
twisti [Sat, 19 Jun 2004 12:24:42 +0000 (12:24 +0000)]
- removed stringdeleter from tables_close (why?)
- renamed some functions to better names: utf_new_int -> utf_new_intern
class_new_int -> class_new_intern
- added class_remove
twisti [Sat, 19 Jun 2004 12:23:13 +0000 (12:23 +0000)]
- removed stringdeleter from tables_close (why?)
- renamed some functions to better names: utf_new_int -> utf_new_intern
class_new_int -> class_new_intern
- added class_remove: this removes the classinfo entry in the hashtable
twisti [Sat, 19 Jun 2004 12:21:06 +0000 (12:21 +0000)]
Added class_free
twisti [Sat, 19 Jun 2004 12:20:06 +0000 (12:20 +0000)]
Ansi C greetz you...
twisti [Sat, 19 Jun 2004 12:13:45 +0000 (12:13 +0000)]
- added new_classformaterror
- added check_classbuffer_size (use before suck_ calls)
- made suck_* #define's inline functions
- some functions now return bool to catch "truncated class files"
- added some eager loading stuff
- free class resources if loading failed
- class_init wrapper with monitors to handle class init's properly
twisti [Thu, 17 Jun 2004 19:23:25 +0000 (19:23 +0000)]
Moved builtin_monitorenter/builtin_monitorexit functions outside of the
trace call functions to get a proper trace call with threads.
twisti [Thu, 17 Jun 2004 17:17:09 +0000 (17:17 +0000)]
Fixed include paths.
twisti [Thu, 17 Jun 2004 17:12:40 +0000 (17:12 +0000)]
Added throw_exception
stefan [Thu, 17 Jun 2004 16:04:44 +0000 (16:04 +0000)]
*** empty log message ***
jowenn [Wed, 16 Jun 2004 14:56:18 +0000 (14:56 +0000)]
a few finalizer testcases, old thread implementation uses now VMThread, no mor context (perhaps we should change some of the functions needing Thread objects to use VMThreadobjects. Better handling of ambigious native function names. Fix for clinit in static native call stub. early initialization of System class ...
stefan [Sat, 12 Jun 2004 15:04:31 +0000 (15:04 +0000)]
MIPS specific functions
stefan [Sat, 12 Jun 2004 15:01:00 +0000 (15:01 +0000)]
prototype fix
stefan [Sat, 12 Jun 2004 14:58:25 +0000 (14:58 +0000)]
ansi c fix
stefan [Sat, 12 Jun 2004 13:34:06 +0000 (13:34 +0000)]
Threads for IRIX
stefan [Sat, 12 Jun 2004 13:33:38 +0000 (13:33 +0000)]
Alignment was broken for MIPS
stefan [Sat, 12 Jun 2004 13:32:49 +0000 (13:32 +0000)]
Critical sections declaration fix
stefan [Sat, 12 Jun 2004 13:29:07 +0000 (13:29 +0000)]
Native stub size again
stefan [Fri, 11 Jun 2004 20:41:38 +0000 (20:41 +0000)]
Small fix (native stub size)
stefan [Fri, 11 Jun 2004 16:28:13 +0000 (16:28 +0000)]
atomic functions in asmpart.S because of MIPSPro compiler
stefan [Fri, 11 Jun 2004 15:45:05 +0000 (15:45 +0000)]
Atomic operations for MIPS
stefan [Fri, 11 Jun 2004 12:16:04 +0000 (12:16 +0000)]
More darwin-threads stuff
stefan [Fri, 11 Jun 2004 11:34:49 +0000 (11:34 +0000)]
Null pointer exception working again on darwin
twisti [Wed, 9 Jun 2004 16:28:52 +0000 (16:28 +0000)]
- removed cacao_shutdown
- support classfiles up to 48.0
twisti [Wed, 9 Jun 2004 16:28:00 +0000 (16:28 +0000)]
- suck_init filename bugfix
- support classfiles up to 48.0
twisti [Wed, 9 Jun 2004 15:50:23 +0000 (15:50 +0000)]
Removed TRACECALLARGS stuff, because it used 16MB memory. Now we use a
simple malloc with a memset to zero for literals.
twisti [Mon, 7 Jun 2004 10:09:20 +0000 (10:09 +0000)]
static function prototypes should not be in a header file, because they produce warnings. This was originally my fault.
twisti [Sun, 6 Jun 2004 15:01:06 +0000 (15:01 +0000)]
- export xhandler
- bug fix in clinit (save float argument register)
twisti [Sun, 6 Jun 2004 13:29:25 +0000 (13:29 +0000)]
- added cacao_exit which exits the cacao jvm as it should be, with
Runtime.exit(I)V
- include paths fixed
twisti [Sun, 6 Jun 2004 13:28:36 +0000 (13:28 +0000)]
Added function protos: cacao_exit, cacao_shutdown.
twisti [Sun, 6 Jun 2004 13:20:49 +0000 (13:20 +0000)]
Fix include paths to support build directories.
twisti [Sun, 6 Jun 2004 13:20:11 +0000 (13:20 +0000)]
- runFinalization() bug fix, ucsd benchmark now works again
- implemented _deprecated_ runFinalizersOnExitInternal (and it does not
work really, it closes very soon stdin, stdout and stderr file handles
and exit then silenty, don't know yet how to fix this)
twisti [Sun, 6 Jun 2004 12:48:10 +0000 (12:48 +0000)]
Fix include paths to support build directories.
twisti [Sat, 5 Jun 2004 23:57:56 +0000 (23:57 +0000)]
Fix include paths to support build directories.
twisti [Sat, 5 Jun 2004 23:53:56 +0000 (23:53 +0000)]
- added gc_invoke_finalizers
- fixed include paths
- gc_out_of_memory changes
twisti [Sat, 5 Jun 2004 23:53:24 +0000 (23:53 +0000)]
Added gc_invoke_finalizers proto.
twisti [Sat, 5 Jun 2004 23:20:53 +0000 (23:20 +0000)]
- added emitfuncs stuff
- fix to support build directories
twisti [Sat, 5 Jun 2004 23:19:24 +0000 (23:19 +0000)]
Fix include paths to support build directories.
twisti [Sat, 5 Jun 2004 20:58:14 +0000 (20:58 +0000)]
- export calljava_xhandler, calljava_xhandler2
- some code indent
twisti [Sat, 5 Jun 2004 20:57:12 +0000 (20:57 +0000)]
- fixed ArrayIndexOutOfBoundsException bug
- moved gen_bound_check into .h
twisti [Sat, 5 Jun 2004 20:39:49 +0000 (20:39 +0000)]
- fixed ArrayIndexOutOfBoundsException bug
- removed wrapper functions for asm_calljavafunction and asm_cacheflush
(why did we need them?)
twisti [Sat, 5 Jun 2004 20:28:56 +0000 (20:28 +0000)]
- bug fix in L_initializererror
- replaced _asm_docalljavamethod with _asm_calljavafunction, this implies
a exception bug fix
- added some function comments
twisti [Sat, 5 Jun 2004 17:46:19 +0000 (17:46 +0000)]
Fixed ArrayIndexOutOfBoundsException bug.
twisti [Sat, 5 Jun 2004 17:38:00 +0000 (17:38 +0000)]
Fixed ArrayIndexOutOfBoundsException bug.
twisti [Sat, 5 Jun 2004 17:32:27 +0000 (17:32 +0000)]
- ICMD_CHECKOOM to ICMD_CHECKEXCEPTION stuff
- removed LOOP_DEBUG stuff
- removed compileverbose message
- fixed ArrayIndexOutOfBoundsException bug
twisti [Sat, 5 Jun 2004 16:29:07 +0000 (16:29 +0000)]
- moved all code emitter functions in emitfuncs.c
- moved code generation macros into header file (some of them are needed
emit functions)
twisti [Sat, 5 Jun 2004 15:44:52 +0000 (15:44 +0000)]
- correct includes
- use class_free again
twisti [Sat, 5 Jun 2004 14:37:51 +0000 (14:37 +0000)]
i386 and x86_64 methodtable bugfix.
twisti [Sat, 5 Jun 2004 14:37:14 +0000 (14:37 +0000)]
Added dummy prototypes for calljava_xhandler and calljava_xhandler2.
twisti [Sat, 5 Jun 2004 12:22:26 +0000 (12:22 +0000)]
- removed _GNU_SOURCE
- started to set include directories correctly (to support builds in
different build directories)
twisti [Thu, 3 Jun 2004 22:15:22 +0000 (22:15 +0000)]
Class values (off*val) are s4's, so just read and write a long.
twisti [Thu, 3 Jun 2004 21:35:05 +0000 (21:35 +0000)]
- replaced ICMD_CHECKOOM with ICMD_CHECKEXCEPTION
- added missing gen_div_check's for software / by zero
twisti [Thu, 3 Jun 2004 21:30:30 +0000 (21:30 +0000)]
- added asm_getclassvalues_atomic and asm_criticalsections
- some risc-like defines
twisti [Thu, 3 Jun 2004 20:47:05 +0000 (20:47 +0000)]
Removed methodtable.* stuff.
twisti [Thu, 3 Jun 2004 20:44:56 +0000 (20:44 +0000)]
Removed methodtable.* entries.
twisti [Thu, 3 Jun 2004 20:43:34 +0000 (20:43 +0000)]
We don't need this anymore, we now use a much faster avl tree to find
methods.
twisti [Thu, 3 Jun 2004 20:40:39 +0000 (20:40 +0000)]
Use avl tree instead of a simple linked list for x86*'s methodtable.
twisti [Thu, 3 Jun 2004 20:38:23 +0000 (20:38 +0000)]
We don't need this anymore, we now use a much faster avl tree to find
methods.
twisti [Wed, 2 Jun 2004 11:12:03 +0000 (11:12 +0000)]
- #include "config.h"
- added asm_getclassvalues_atomic and asm_criticalsections
- class_load/link calls in handle_exception
- handle ininitializererror in check_clinit
twisti [Wed, 2 Jun 2004 11:10:17 +0000 (11:10 +0000)]
- removed nullpointer proto
- removed LOOP_DEBUG stuff
- added ICMD_CHECKEXCEPTION
- don't recompute pv after asmpart calls
- call check_clinit from nativestub if native method
twisti [Wed, 2 Jun 2004 10:56:49 +0000 (10:56 +0000)]
Compile asmpart.S with all falgs (to get config.h).
twisti [Wed, 2 Jun 2004 10:34:31 +0000 (10:34 +0000)]
Also set xcheckarefs back to null.
twisti [Wed, 2 Jun 2004 10:31:09 +0000 (10:31 +0000)]
ifdef __GNUC__ #warnings for mips pro compiler
jowenn [Mon, 31 May 2004 15:47:20 +0000 (15:47 +0000)]
Exceptions work now with nested builtin_news correctly (set the exception pointer to zero, before creating a new exception, otherwise the next native stub does not return properly. Better handling of exceptions created during jit_compile, clear exceptions during invocation of Call* jni functions, before the real invocation of the target, refill in stack traces if an ICMD_CHECKEXCEPTION is encountered, ...
jowenn [Sat, 29 May 2004 07:51:40 +0000 (07:51 +0000)]
should have been , now it works in the cvs version too
jowenn [Fri, 28 May 2004 21:45:51 +0000 (21:45 +0000)]
checking the return value of a non void function, which contains returns without values is a bad idea. I think an int return type true/false would be sufficient.
twisti [Fri, 28 May 2004 13:11:16 +0000 (13:11 +0000)]
Print branch addresses correctly.
twisti [Fri, 28 May 2004 13:04:46 +0000 (13:04 +0000)]
Replaced ICMD_CHECKOOM by ICMD_CHECKEXCEPTION.
twisti [Fri, 28 May 2004 12:18:44 +0000 (12:18 +0000)]
Removed warnings.
twisti [Fri, 28 May 2004 10:25:55 +0000 (10:25 +0000)]
Removed warnings.
twisti [Fri, 28 May 2004 10:10:18 +0000 (10:10 +0000)]
...and we should use it correctly ;-) Damn!
twisti [Fri, 28 May 2004 10:07:06 +0000 (10:07 +0000)]
Use MNEW instead of malloc, removes warnings.
twisti [Thu, 27 May 2004 17:34:50 +0000 (17:34 +0000)]
Define some linux flags, maybe also used in other systems.
twisti [Thu, 27 May 2004 16:30:45 +0000 (16:30 +0000)]
- header changes
- install signal handlers in the posix way
- removed logging
- changed ICMD_CHECKOOM to ICMD_CHECKEXCEPTION
twisti [Thu, 27 May 2004 16:29:04 +0000 (16:29 +0000)]
Some header changes.
twisti [Thu, 27 May 2004 16:27:04 +0000 (16:27 +0000)]
Replaced findmethod with codegen_findmethod.
twisti [Thu, 27 May 2004 16:06:14 +0000 (16:06 +0000)]
Changed xoomrefs to xexceptionrefs.
twisti [Thu, 27 May 2004 16:01:29 +0000 (16:01 +0000)]
- changed ICMD_CHECKOOM to ICMD_CHECKEXCEPTION
- removed warnings
twisti [Thu, 27 May 2004 15:58:34 +0000 (15:58 +0000)]
cacao system changes added.
twisti [Thu, 27 May 2004 15:57:33 +0000 (15:57 +0000)]
This on is huge:
- many loader exceptions
- other exceptions
- better logging
- removed some unused stuff
twisti [Thu, 27 May 2004 15:54:42 +0000 (15:54 +0000)]
- many exception related changes
- void analyse_stack() -> methodinfo *analyse_stack(methodinfo *m)
- removed logging messages
twisti [Thu, 27 May 2004 15:52:27 +0000 (15:52 +0000)]
- changed option statistics to opt_stat
- many exception changes
- defined -eager (not yet supported)
twisti [Thu, 27 May 2004 15:49:43 +0000 (15:49 +0000)]
- many changes related to exceptions
- added static methodptr jit_compile_intern() (don't call it!)
- better logging
- changed CHECKOOM to CHECKEXCEPTION
- started to change header include paths
twisti [Thu, 27 May 2004 15:46:59 +0000 (15:46 +0000)]
- many changes related to exceptions
- changed ICMD_CHECKOOM to ICMD_CHECKEXCEPTION
- removed logging messages
twisti [Thu, 27 May 2004 15:44:54 +0000 (15:44 +0000)]
- changed ICMD_CHECKOOM to ICMD_CHECKEXCEPTION
- removed typecheck() prototype (typecheck now has its own header)
twisti [Thu, 27 May 2004 15:43:11 +0000 (15:43 +0000)]
- #include "native.h"
- typecheck() returns methodinfo *
- removed logging messages
twisti [Thu, 27 May 2004 15:41:37 +0000 (15:41 +0000)]
- more exception strings defined
- class_java_lang_Throwable defined
- added init_system_exceptions() and compile_all_class_methods() for
compiler exceptions
- better oom handling
- throw_cacao_exception_exit() if we cannot create an exception
twisti [Wed, 26 May 2004 21:32:34 +0000 (21:32 +0000)]
- removed unused class_java_lang_Throwable
- changed class_link return type to classinfo *
twisti [Wed, 26 May 2004 21:27:03 +0000 (21:27 +0000)]
- added utf_fprint_classname
- first try to support eager loading
- check for opt_stat in STATISTICS
twisti [Wed, 26 May 2004 21:22:05 +0000 (21:22 +0000)]
Added log_message_class and log_message_method
twisti [Wed, 26 May 2004 18:52:37 +0000 (18:52 +0000)]
Check class_{load,link,init} for exceptions.
twisti [Wed, 26 May 2004 18:40:36 +0000 (18:40 +0000)]
Next version, even more complete.
twisti [Wed, 26 May 2004 18:40:15 +0000 (18:40 +0000)]
Used from extest.
jowenn [Wed, 26 May 2004 15:04:54 +0000 (15:04 +0000)]
the cleaner part of the code for stub created exceptions, the rest will follow soon
jowenn [Wed, 26 May 2004 15:01:32 +0000 (15:01 +0000)]
a few stub exception test files
twisti [Wed, 26 May 2004 13:29:18 +0000 (13:29 +0000)]
Catch jit_compiler exceptions.
twisti [Wed, 26 May 2004 09:41:33 +0000 (09:41 +0000)]
Only a header file...