2005-01-31 Zoltan Varga <vargaz@freemail.hu>
[mono.git] / mono / jit / ChangeLog
index 765a6e67cd74ff17429974176b9b34e4f1997abc..11096730d60037b7a111a8a5919c01cdd95adbe5 100644 (file)
@@ -1,3 +1,299 @@
+2003-07-21  Miguel de Icaza  <miguel@ximian.com>
+
+       * jit.c: Remove definition of metadata_section mutex from here
+
+2003-05-19  Dick Porter  <dick@ximian.com>
+
+       * jit.c: Netbsd build fix by marc@informatik.uni-bremen.de.
+
+Thu Apr 24 17:11:03 CEST 2003 Paolo Molaro <lupus@ximian.com>
+
+       * Makefile.am: rename mono and libmono to oldmono and liboldmono.
+
+2003-04-23  Martin Baulig  <martin@ximian.com>
+
+       * mono.c: The `--debug' command line argument doesn't take any
+       arguments anymore, removed the `--debug-args' argument.
+
+       * debug-jit.c (mono_debug_add_method): Renamed this to
+       mono_debug_jit_add_method(); create the JIT-specific data
+       structure and pass it to mono_debug_add_method().
+
+       * debug.[ch]: Removed.  The code is now in
+       ../metadata/mono-debug.[ch] and mono-debug-debugger.[ch].
+
+       * debug-stabs.c, debug-dwarf2.c: Removed; nobody used this for the
+       last six months.
+
+2003-04-21  Martin Baulig  <martin@ximian.com>
+
+       * debug.c (mono_debug_open): Splitted into mono_debug_init() and
+       mono_debug_init_2().
+       (mono_debug_open_image): Don't open referenced assemblies; this is
+       done automatically by the code in assembly.c.
+
+       * mono.c (main_thread_handler): Call mono_debug_init() before
+       opening the assembly because we need to install the assembly load
+       hook before doing so.
+
+2003-04-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+       * jit.c:
+       (mono_jit_cleanup): moved mono_runtime_cleanup call after the call to
+       mono_domain_finalize.
+
+2003-04-05  Miguel de Icaza  <miguel@ximian.com>
+
+       * jit.c (check_inlining): honor the NOINLING atttribute.
+
+2003-03-31  Martin Baulig  <martin@ximian.com>
+
+       * debug.h (MonoDebuggerEvent): Removed
+       MONO_DEBUGGER_EVENT_THREAD_CREATED.
+
+       * jit.c (mono_thread_start_cb): Don't send the
+       MONO_DEBUGGER_EVENT_THREAD_CREATED event.
+
+2003-03-13  Martin Baulig  <martin@ximian.com>
+
+       * debug.c (_mono_debug_address_from_il_offset): Moved to
+       ../metadata/debug-mono-symfile.c
+
+2003-03-07  Martin Baulig  <martin@ximian.com>
+
+       * debug-jit.c: #include <config.h>.
+
+2003-03-05  Martin Baulig  <martin@ximian.com>
+
+       * debug-jit.c, debug-jit.h: New files.  Moved all JIT-specific
+       stuff here.
+
+       * debug.c (mono_debug_add_method): Moved to debug-jit.c.
+       (mono_debug_handle, mono_debug_initialized): Made them global.
+       (replace_suffix): Removed, this isn't used anymore.
+       (record_line_number): Moved to debug-jit.c.
+       (debug_generate_method_lines): Moved to debug-jit.c
+       (generate_line_number): Renamed to
+       _mono_debug_generate_line_number() and made it global.
+       (debug_update_il_offsets): Moved to debug-jit.c
+       (mono_debug_get_image): Renamed to _mono_debug_get_image() and made
+       it global.
+       (address_from_il_offset): Renamed to
+       _mono_debug_address_from_il_offset() and made it global.
+       (il_offset_from_position): Moved to debug-jit.c
+       (lookup_method): Renamed to _mono_debug_lookup_method() and made
+       it global.
+       (mono_debug_add_method): Moved to debug-jit.c.
+       (mono_debug_create_notification_function): Use two new functions
+       mono_debug_codegen_breakpoint() and mono_debug_codegen_ret()
+       instead of x86_breakpoint() and x86_ret().      
+
+Sat Mar 1 12:36:45 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+       * jit.c: remove unnecessary assert when inlining.
+
+2003-02-17  Martin Baulig  <martin@ximian.com>
+
+       * jit.c (mono_jit_compile_method): Don't emit a `nop' at the start
+       of each method.
+
+2003-02-14  Patrik Torstensson
+
+       * x86.brg: Implemented CONV_OVF_[I|U]4 (freg), this fixes the issues 
+       with the "checked" keyword. Closes bugs #33421 and #35280 (JIT not mint)
+
+2003-02-14  Dietmar Maurer  <dietmar@ximian.com>
+
+       * exception.c (mono_arch_find_jit_info): better way to handle
+       situations where we have no MonoJitInfo
+
+2003-02-11  Zoltan Varga  <vargaz@freemail.hu>
+
+       * trampoline.c (arch_create_jit_trampoline): This function should 
+       allways return a trampoline for managed methods. Fixes bug #29859.
+
+2003-02-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+       * debug.c: allocate debug->source_files. Fixes GLib-CRITICAL upon
+       debugging clean up.
+
+2003-02-02  Martin Baulig  <martin@ximian.com>
+
+       * debug.c (mono_debug_add_wrapper): Lookup the wrapper method in a
+       hash table; we need to provide the correct code_size.
+
+2003-02-02  Martin Baulig  <martin@ximian.com>
+
+       * jit.c (mono_jit_compile_method): Call mono_debug_add_wrapper()
+       to add the interncall to the symbol file.
+
+       * debug.c (mono_debug_add_wrapper): New public function.
+
+2003-02-02  Martin Baulig  <martin@ximian.com>
+
+       * debug.c (debug_update_il_offsets): Set the prologue end address
+       to the address of the first source line.
+
+2003-01-31  Dietmar Maurer  <dietmar@ximian.com>
+
+       * jit.c (mono_analyze_stack): use the wrapper signature if necessary
+
+2003-01-31  Zoltan Varga  <vargaz@freemail.hu>
+
+       * debug.c (mono_debug_open_image): dynamic assemblies have no debug
+       info.
+
+Thu Jan 30 11:07:06 CET 2003 Paolo Molaro <lupus@ximian.com>
+
+       * helper.c: handle MONO_TYPE_ARRAY as well.
+       
+2003-01-29  Dietmar Maurer  <dietmar@ximian.com>
+
+       * jit.c (mono_analyze_stack): impl. CEE_MONO_LDNATIVEOBJ
+       (mono_analyze_stack): RETOBJ always returns native sized objects 
+
+2003-01-28  Zoltan Varga  <vargaz@freemail.hu>
+
+       * x86.brg (mono_ldintftn): use <= instead of <, since the 
+       interface_offsets array is max_interface_id + 1 long.
+
+2003-01-28  Dietmar Maurer  <dietmar@ximian.com>
+
+       * x86.brg (mono_ldintftn): fix from Zoltan: use max_interface_id
+
+2003-01-27  Zoltan Varga  <vargaz@freemail.hu>
+
+       * exception.c (ves_icall_get_trace): avoid crash if the exception is 
+       not yet thrown.
+
+       * exception.c (ves_icall_get_trace): avoid crash on unmanaged frames.
+
+2003-01-26  Martin Baulig  <martin@ximian.com>
+
+       * debug.c (mono_debug_init): Take a boolean argument which
+       specifies whether we're running in the Mono Debugger.
+
+2003-01-24  Martin Baulig  <martin@ximian.com>
+
+       * debug.c (mono_debug_io_layer): Disable this on Windows.
+
+2003-01-23  Dick Porter  <dick@ximian.com>
+
+       * mono.c: Use mono_runtime_exec_managed_code() to run all managed
+       code in a subthread.
+
+       * jit.c: Changed thread start and attach callbacks to pass the
+       thread ID, not the MonoThread pointer.  Arrange that managed code
+       execution will fail an assertion in the main thread, just to be
+       sure.
+
+2003-01-22  Martin Baulig  <martin@ximian.com>
+
+       * debug.c: Reverted Gonzalo's last change since it is wrong.
+       We're also using the debugging code on Windows, for instance the
+       stabs stuff when running in gdb.  I hope this code still builds on
+       Windows; if not, we need to fix this.
+       Moved all the mono debugger support code into the debugger itself;
+       when debugging a managed application, the debugger new launches a
+       small unmanaged wrapper application which contains this stuff.
+
+       * debug.h (MonoDebuggerIOLayer): New public typedef; this is just
+       initialized to an array of function pointers to the io-layer
+       function; they don't seem to be public in the `libmono' library.
+       (mono_debugger_event): New public function.  Sends the debugger an
+       event if we're running in the Mono Debugger and does nothing otherwise.
+
+       * mono.c: Don't initialize the Mono Debugger here.
+
+       * jit.c (mono_debug_insert_breakpoint): Removed, this isn't used anymore.
+       (mono_thread_start_cb, mono_thread_attach_cb): Call
+       mono_debugger_event() to send the debugger a callback.
+
+2003-01-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+       * debug.c: make all public symbols just dummy for windows.
+
+2003-01-20  Miguel de Icaza  <miguel@ximian.com>
+
+       * debug.c (initialize_debugger_support): ifdef out the call to
+       mono_debugger_init_thread_debug for the release. 
+
+       Someone should look into why its not defined.  I think the problem
+       is what Dick pointed out somewhere: code in io-layer is not
+       supposed to ever be used in Windows, so code for the debugger that
+       lives there must be moved elsewhere.
+
+2003-01-19  Martin Baulig  <martin@ximian.com>
+
+       * debug.c: Ok, this should now finally be working this time ....
+
+2003-01-18  Martin Baulig  <martin@ximian.com>
+
+       * debug.c (mono_debugger_jit_exec): Send the background thread a
+       SIGKILL before returning.
+
+2003-01-17  Dietmar Maurer  <dietmar@ximian.com>
+
+       * x86.brg: removed duplicated CONV_OVF_I4
+
+2003-01-17  Martin Baulig  <martin@ximian.com>
+
+       * debug.c: Don't use mono_once here.  Reworked the API a bit to
+       use `mono_debug_' and `debug_' for the general debugging API and
+       `mono_debugger_' and `debugger_' for the Mono Debugger stuff.
+
+2003-01-16  Martin Baulig  <martin@ximian.com>
+
+       * debug.c (debugger_thread_func): We don't need to `raise
+       (SIGSTOP)' anymore; the thread manager already takes care of this.
+
+2003-01-16  Dietmar Maurer  <dietmar@ximian.com>
+
+       * exception.c (arch_handle_exception): exclude runtime invoke
+       wrapper from the stack trace
+
+       * jit.c (mono_cfg_new): allocate extra space to store esp (used by exceptions)
+       (mono_thread_start_cb): save an additional LMF at thread start
+
+2003-01-16  Martin Baulig  <martin@ximian.com>
+
+       * jit.c (mono_runtime_install_handlers): Use SYS_sigaction() for
+       the mono_thread_get_abort_signal () - this is SIGUSR1 on FreeBSD
+       and the LinuxThreads port doesn't allow you to override the handler.
+       [FIXME: This avoids an assertion failure on startup, but there's
+       still an issue with thread termination.]
+
+2003-01-16  Martin Baulig  <martin@ximian.com>
+
+       * debug.c (debugger_thread_func): We don't need to `raise
+       (SIGSTOP)' anymore; the thread manager already takes care of this.
+
+2003-01-16  Martin Baulig  <martin@ximian.com>
+
+       * debug.c: Use the mono/io-layer functions here instead of gthread.
+
+2003-01-14  Dietmar Maurer  <dietmar@ximian.com>
+
+       * jit.c (mono_jit_compile_method):  make sure runtime_init is called 
+       (mono_analyze_stack): make sure runtime_init is called
+
+2003-01-14  Martin Baulig  <martin@ximian.com>
+
+       * debug.c (debugger_update_symbol_file_table): Moved all the
+       functionality into debugger_update_symbol_file_table_internal();
+       the latter one will be called from the background thread while
+       already owning the lock.  This'll allow us to step into
+       debugger_update_symbol_file_table() in the debugger and debug it.
+
+2003-01-14  Martin Baulig  <martin@ximian.com>
+
+       * Makefile.am: Link against gthread.
+
+       * jit.c: After realizing that mono-mutex doesn't work either
+       because it doesn't support recursive mutexes on FreeBSD, rewrote
+       the whole thread stuff to use gthread.  This seems to fix this
+       weird deadlock in the debugger as well.
+
 2003-01-12  Alp Toker  <alp@atoker.com>
 
        * exception.c: Typo fix: insinde -> inside