+2006-06-20 Jb Evain <jbevain@gmail.com>
+
+ * cpu-g4.md: fix max length of start_handler instruction.
+
+2006-06-20 Massimiliano Mantione <massi@ximian.com>
+ * simple-cee-ops.h, simple-mini-ops.h: Fixed bug 78656.
+
+2006-06-16 Massimiliano Mantione <massi@ximian.com>
+ * ssa.c: Fixed bug 78653 for SSA based deadce.
+ * mini.h: added MONO_INST_DEFINITION_HAS_SIDE_EFFECTS flag go
+ MonoInst.flags, used in SSA based deadce.
+ * aliasing.c: Fixed bug 78653 for "fastpath" deadce.
+ * simple-cee-ops.h, simple-mini-ops.h: Fixed bug 78653.
+
+Thu Jun 15 16:52:46 CEST 2006 Paolo Molaro <lupus@ximian.com>
+
+ * tramp-ppc.c: don't use malloc () for trampoline code, sometimes
+ it can end up using non executable memory on ppc64 systems
+ running ppc32 userspace (fix from Johannes Berg).
+
+2006-06-14 Dick Porter <dick@ximian.com>
+
+ * wapihandles.c: Fix a bunch of signed/unsigned warnings from gcc
+ 4.1.1
+
+2006-06-13 Massimiliano Mantione <massi@ximian.com>
+ * mini.c: Made so that inline is locally disabled if it would
+ trigger a .cctor, because too many apps depend on this behavior
+ (which seems to be also the one of the MS CLR).
+
+2006-06-13 Zoltan Varga <vargaz@gmail.com>
+
+ * mini-amd64.c (mono_emit_stack_alloc): Fix initialization of localloc'ed memory.
+ No idea why this worked before.
+
+ * branch-opts.c (mono_branch_optimize_exception_target): Avoid branches
+ which branch to outer exception clauses since they could skip the
+ inner finally clauses. Fixes #78633.
+
+ * exceptions.cs: Add a test for the above.
+
+ * mini.c (merge_basic_blocks): Nullify the branch at the end of the first bb.
+ Fixes #78629.
+
+ * iltests.il: Add a test for the above.
+
+2006-06-12 Zoltan Varga <vargaz@gmail.com>
+
+ * mini.c (remove_block_if_useless): Do not remove the bblock immediately
+ after the end of a try bblock, to prevent asserts in mini_method_compile ().
+
+ * iltests.il: Add a test for the above.
+
+2006-06-10 Zoltan Varga <vargaz@gmail.com>
+
+ * mini-ia64.c (mono_arch_lowering_pass): Remove some code duplication.
+
+ * mini-ia64.c inssel-ia64.brg: Implement the new net 2.0 Interlocked.Add
+ methods as instrinsics.
+
+2006-06-09 Wade Berrier <wberrier@novell.com>
+
+ * Makefile.am: Fix sources list for svn rename so that make dist succeeds
+ (simple-cee-ops.h ssapre-mini-ops.h)
+
+2006-06-09 Neale Ferguson <neale@sinenomine.net>
+
+ * mini-exceptions.c (ves_icall_get_frame_info): Fix this function on s390/s390x.
+ * mini-s390x.c, mini-s390.c: Correct ATOMIC operations (incorrect register for CS
+ instruction).
+ * mini-s390x.h, mini-s390.h: Simplify MCONTEXT_GET_BP.
+ * cpu-s390x.md: Fix max. length values for a couple of instructions.
+
+2006-06-09 Jonathan Chambers <jonathan.chambers@ansys.com>
+
+ * mini-exceptions.c: Minor fix for building mono in Visual Studio.
+
+2006-06-08 Massimiliano Mantione <massi@ximian.com>
+
+ * ssapre-cee-ops.h: Renamed as "simple-cee-ops.h"
+ * simple-cee-ops.h: Was "ssapre-cee-ops.h" (renamed).
+ * ssapre-mini-ops.h: Renamed as "simple-mini-ops.h"
+ * simple-mini-ops.h: Was "ssapre-mini-ops.h" (renamed).
+ * local-propagation.c: In mono_cprop_invalidate_values use a whitelist
+ of opcodes, so that bug 78549 should not happen again.
+ * ssapre.c: Updated to use the renamed files.
+
+2006-06-08 Zoltan Varga <vargaz@gmail.com>
+
+ * mini-amd64.c (mono_arch_output_basic_block): Fix a wrong reg-reg move
+ in OP_ATOMIC_EXCHANGE_I4.
+
+2006-06-07 Wade Berrier <wberrier@novell.com>
+
+ * tramp-s390.c: Fix s390 build (add missing pointer declarations
+ in mono_debugger_create_notification_function)
+
+2006-06-06 Zoltan Varga <vargaz@gmail.com>
+
+ * mini.c (NEW_AOTCONST_TOKEN): Fix amd64 build.
+
+ * mini.c (type_from_stack_type): Disable some changes which do not
+ seem to work.
+
+ * driver.c: Reenable opts.
+
+ * mini.h (MonoStackSlot): New structure to keep track of the verification state
+ of the evaluation stack.
+
+ * mini.h (MonoBasicBlock): Add a 'stack_state' field to keep track of the
+ evaluation stack trace at entry to the bblock.
+
+ * mini.c (merge_stacks): New function to perform verification of stack merges.
+ Turned off by default.
+
+ * mini.c: Fill up ins->klass for instructions whose type is STACK_OBJ or
+ STACK_MP.
+
+2006-06-06 Massimiliano Mantione <massi@ximian.com>
+
+ * local-propagation.c: Fixed bug 78549.
+
+2006-06-04 Zoltan Varga <vargaz@gmail.com>
+
+ * mini-exceptions.c (ves_icall_get_frame_info): Fix this function on ia64.
+
+2006-06-02 Miguel de Icaza <miguel@novell.com>
+
+ * tramp-sparc.c, tramp-ppc.c, tramp-s390.c, tramp-s390x.c,
+ tramp-arm.c, tramp-ia64.c
+ (mono_debugger_create_notification_function): Update signature to
+ new signature and use new protocol for creating the notification
+ function.
+
+ Should fix the build.
+
+2006-06-02 Geoff Norton <gnorton@customerdna.com>
+
+ * exceptions-ppc.c (mono_jit_walk_stack)
+ (ves_icall_get_frame_info): Fix the build
+
+2006-06-02 Zoltan Varga <vargaz@gmail.com>
+
+ * mini.c (mono_set_defaults): Fix the handling of -O=-all.
+
+2006-05-31 Raja R Harinath <rharinath@novell.com>
+
+ * il2tests.2.il: New file for generics CIL tests. Add test for
+ #78019.
+ * Makefile.am: Update.
+
+ Fix #78019
+ * mini.c (mono_method_to_ir): Don't apply box+brtrue optimization
+ to nullable types.
+
+2006-05-30 Massimiliano Mantione <massi@ximian.com>
+
+ * aliasing.c: Fixed bug 78311.
+
+2006-05-29 Martin Baulig <martin@ximian.com>
+
+ * mini-exceptions.c (mono_find_jit_info): When computing the
+ native offset, check whether we're actually inside the method's
+ code; call mono_debug_print_stack_frame() to format the frame.
+ (ves_icall_System_Exception_get_trace): Call
+ mono_debug_print_stack_frame() to format the stack frame.
+ (ves_icall_get_trace): Update to the new debugging API.
+ (mono_jit_walk_stack_from_ctx): Likewise.
+ (ves_icall_get_frame_info): Likewise.
+
+ * mini.c (get_method_from_ip): Use the new debugging API.
+ (mono_print_method_from_ip): Likewise.
+
+ * exceptions-ppc.c
+ (mono_jit_walk_stack): Use the new debugging API.
+ (ves_icall_get_frame_info): Likewise.
+
+2006-05-27 Zoltan Varga <vargaz@gmail.com>
+
+ * mini-amd64.c (mono_arch_output_basic_block): Fix MONO_PROFILE_COVERAGE.
+
+2006-05-25 Massimiliano Mantione <massi@ximian.com>
+
+ * mini.c: Added "limitator" to inline for debugging.
+
+2006-05-24 Martin Baulig <martin@ximian.com>
+
+ * debug-debugger.c (mono_debugger_init): Create a private,
+ malloc()-based code manager for the notification function and
+ intentionally leak it on exit. This fixes the crash-on-exit race
+ condition.
+
+ * tramp-amd64.c
+ (mono_debugger_create_notification_function): Added
+ `MonoCodeManager *' argument.
+
+ * tramp-x86.c
+ (mono_debugger_create_notification_function): Added
+ `MonoCodeManager *' argument.
+
+2006-05-23 Massimiliano Mantione <massi@ximian.com>
+
+ * aliasing.c: Fixed 64 bit issue.
+ * driver.c: Enabled inline,consprop,copyprop,treeprop,deadce by
+ default since all known bugs are fixed (one more time!).
+
+Tue May 23 13:47:28 CEST 2006 Paolo Molaro <lupus@ximian.com>
+
+ * mini.c: write barrier support.
+
+2006-05-23 Martin Baulig <martin@ximian.com>
+
+ * debug-debugger.c: Revert Paolo's change. Add comment and #error
+ check at the top of the file.
+
+Sun May 21 12:22:29 CEST 2006 Paolo Molaro <lupus@ximian.com>
+
+ * debug-debugger.c: fix the build. Again. Hopefully Martin will stop
+ reverting changes without reason and without changelog entries.
+
+2006-05-18 Zoltan Varga <vargaz@gmail.com>
+
+ * mini-sparc.c (mono_arch_output_basic_block): Add support for large stack offets
+ to a few opcodes. Fixes #78439.
+
+ * mini-sparc.c: Rename mono_sparch_break () to mono_arch_break () to improve
+ consistency with other archs.
+
+ * mini-ia64.c (mono_arch_emit_prolog): Remove debug stuff left in by mistake.
+
+Wed May 17 18:07:33 CEST 2006 Paolo Molaro <lupus@ximian.com>
+
+ * debug-debugger.c: fix the build.
+
+2006-05-17 Martin Baulig <martin@ximian.com>
+
+ * debug-debugger.c
+ (debugger_thread_vtable): Moved here from ../metadata/threads.c.
+ (debugger_init_threads): Formerly known as mono_debugger_init_threads().
+ (debugger_finalize_threads): Formaly known as mono_debugger_finalize_threads().
+ (debugger_attach): Call GC_mono_debugger_add_all_threads().
+
+2006-05-11 Zoltan Varga <vargaz@gmail.com>
+
+ * mini.c (mini_init): Call pthread_attr_destroy () to fix a small memory leak.
+
+2006-05-10 Zoltan Varga <vargaz@gmail.com>
+
+ * mini-x86.c (mono_arch_instrument_epilog): Fix handling of
+ MONO_TYPE_GENERICINST.
+
+ * mini-amd64.c (mono_arch_instrument_epilog): Fix handling of
+ MONO_TYPE_GENERICINST.
+
+2006-05-09 Zoltan Varga <vargaz@gmail.com>
+
+ * mini-x86.c (mono_arch_get_vcall_slot_addr): Add a missing call sequence. Fixes
+ #78325.
+
+2006-05-08 Zoltan Varga <vargaz@gmail.com>
+
+ * mini.c (mono_create_jump_trampoline): Allocate MonoJitInfo from the domain
+ mempool.
+ (mono_jit_free_method): Remove the method from jump_trampoline_hash as well.
+
+2006-05-06 Zoltan Varga <vargaz@gmail.com>
+
+ * mini.c (mini_cleanup): Applied patch from Joachim Ante (joe@otee.dk). Call
+ mono_trace_cleanup ().
+
+ * iltests.il: Fix problem with the newly added test.
+
+ * mini-codegen.c (mono_local_regalloc): When changing the dreg of an instruction
+ due to register constraints, free up the previous hreg. Fixes #78314.
+
+ * iltests.il: Add new test for #78314.
+
+ * mini-x86.c (mono_arch_get_inst_for_method): Use OP_ATOMIC_ADD_NEW_I4 for
+ Interlocked.Add. Fixes #78312.
+
+ * mini-amd64.c (mono_arch_get_inst_for_method): Ditto.
+
+2006-05-05 Zoltan Varga <vargaz@gmail.com>
+
+ * inssel.brg (mini_emit_virtual_call): Fix a warning.
+
+2006-05-05 Martin Baulig <martin@ximian.com>
+
+ * debug-mini.c (mono_debug_open_block): New method.
+
+ * mini-amd64.c
+ (mono_arch_output_basic_block): Call mono_debug_open_block() at
+ the beginning of each basic block.
+
+ * mini-x86.c
+ (mono_arch_output_basic_block): Call mono_debug_open_block() at
+ the beginning of each basic block.
+
+2006-05-04 Massimiliano Mantione <massi@ximian.com>
+
+ * driver.c: Disabled inline,consprop,copyprop,treeprop,deadce by
+ default until I understand why they break the build on amd64.
+
+2006-05-04 Zoltan Varga <vargaz@gmail.com>
+
+ * mini.c (mini_cleanup): Call mono_cleanup ().
+
+ * mini.c (UNVERIFIED): New macro to make it easier to track down verification
+ errors.
+
+2006-05-04 Massimiliano Mantione <massi@ximian.com>
+
+ * aliasing.c: Fixed shameful cut&paste error that caused JIT crashes.
+ * driver.c: Enabled inline,consprop,copyprop,treeprop,deadce by
+ default since all known bugs are fixed, and I cannot reproduce bug
+ 77944... I'm asking Matt Hargett to test again after this commit.
+
+2006-04-28 Massimiliano Mantione <massi@ximian.com>
+
+ * mini-codegen.c: Fixed typo that thrashed inline.
+
+2006-04-28 Zoltan Varga <vargaz@gmail.com>
+
+ * dominators.c (compute_dominators): Avoid using a worklist since
+ it is not correct in some cases. Instead, iterate over all bblocks as
+ in the original paper. Fixes --compile-all -O=all System.Xml.dll.
+
+2006-04-28 Miguel de Icaza <miguel@novell.com>
+
+ * mini.c (mono_jit_compile_method_inner): Use
+ mono_prepare_exception_from_error that resets the value
+ internally.
+
+2006-04-27 Miguel de Icaza <miguel@novell.com>
+
+ * mini.c: Move the mini_loader_error_to_exception to metadata.
+
+2006-04-27 Massimiliano Mantione <massi@ximian.com>
+
+ * aliasing.c: Fixed bug 78210.
+
+2006-04-27 Massimiliano Mantione <massi@ximian.com>
+
+ * driver.c: Disabled inline,consprop,copyprop,treeprop,deadce by
+ default until all their problems (or the ones they trigger) are fixed.
+
+2006-04-26 Zoltan Varga <vargaz@gmail.com>
+
+ * aot-runtime.c (mono_aot_get_method_from_token_inner): Fix the previous patch.
+
+ * aot-runtime.c (mono_aot_get_method_from_token_inner): Mark the method
+ as loaded only after resolving patches since that could invoke the same method.
+
+ * aot-runtime.c (mono_aot_plt_resolve): Fix ppc etc. builds.
+
+ * aot-compiler.c: Refactor mono_aot_compile_aot () into a bunch of smaller
+ functions.
+
+ * aot-runtime.c (init_plt): Use a normal trampoline to transfer code to the
+ AOT loader.
+
+ * aot-compiler.c (emit_plt): Pass the plt offset in %eax instead of on the
+ stack.
+
+ * mini-trampolines.c (mono_aot_plt_trampoline): New trampoline to handle calls
+ made from AOT code through the PLT table.
+
+ * mini-x86.h mini-amd64.h: Define MONO_ARCH_AOT_PLT_OFFSET_REG to the register
+ holding the plt offset when a call is made to the aot plt trampoline.
+
2006-04-25 Zoltan Varga <vargaz@gmail.com>
+ * aot-runtime.c aot-compiler.c cpu-amd64.md mini-amd64.c: Update parts of the
+ amd64 AOT support.
+
+ * Makefile.am (common_sources): Fix build breakage.
+
* aot-runtime.c aot-compiler.c: Reorganize the AOT code yet again: Make all
calls through a jump table similar to the ELF PLT table. Avoid indirect calls for
intra-assembly calls if possible.