2010-06-06 Zoltan Varga <vargaz@gmail.com>
[mono.git] / mono / mini / ChangeLog
index 03e413bc0ed3c1b9e72296b9fa89e1e2bd620f70..d6a832a90a21f5fab6db6ff1cbdc42ee0dda7c53 100755 (executable)
@@ -1,3 +1,206 @@
+2010-06-06  Zoltan Varga  <vargaz@gmail.com>
+
+       * mini.c (mono_jit_runtime_invoke): Initialize *exc to NULL before calling the wrapper,
+       so it doesn't have to do it.
+
+       * helpers.c (mono_disassemble_code): Flush stdout, so the output from the spawned
+       process does not mix with ours.
+
+       * mini-llvm.c (mono_llvm_emit_method): Refactor this giant function into smaller
+       ones.
+
+       * mini-llvm.c method-to-ir.c ir-emit.h: When using the llvm mono branch, allow
+       loads/stores which can throw exceptions inside clauses.
+
+2010-06-05  Zoltan Varga  <vargaz@gmail.com>
+
+       * mini-llvm.c (mono_llvm_emit_method): Fix support for finally clauses with more than
+       one ENDFINALLY.
+
+       * mini.c (mini_init): Register mono_resume_unwind as an icall.
+
+2010-06-03  Zoltan Varga  <vargaz@gmail.com>
+
+       * dwarfwriter.c: Update after the mono_debug_lookup_locals () changes.
+
+       * debugger-agent.c (method_commands_internal): Ditto. Return scope information for
+       locals.
+
+2010-06-03  Zoltan Varga  <vargaz@gmail.com>
+
+       * debugger-agent.c (appdomain_unload): Clear all breakpoint instances in the dying
+       appdomain.
+
+2010-06-02  Zoltan Varga  <vargaz@gmail.com>
+
+       * method-to-ir.c (set_rgctx_arg): New helper function to remove some duplicate code.
+       Use a separate generic class init trampoline for llvm, since it needs a different
+       signature.
+
+       * unwind.c (mono_unwind_decode_fde): Make this decode the mono specific LSDA which
+       includes the location of this/rgctx.
+
+       * mini-llvm.c aot-runtime.c: Enable generic sharing for llvm if using the LLVM mono
+       branch.
+
+2010-06-01  Zoltan Varga  <vargaz@gmail.com>
+
+       * mini.c (mini_method_compile): Enable llvm+exceptions on LLVM SVN.
+
+       * mini-llvm.c (emit_cond_system_exception): Disable llvm when this occurs in a
+       clause.
+
+2010-05-31  Zoltan Varga  <vargaz@gmail.com>
+
+       * unwind.c (mono_unwind_decode_fde): The FDE only has an augmention if the CIE
+       says so.
+
+       * aot-runtime.c (decode_eh_frame): Fix an assert condition.
+
+       * aot-compiler.c (patch_to_string): New debugging helper function.
+
+2010-05-30  Zoltan Varga  <vargaz@gmail.com>
+
+       * exceptions-amd64.c (get_throw_trampoline): Fix the xdebug name of the corlib
+       trampoline.
+
+       * exceptions-x86.c (mono_arch_exceptions_init): Create an llvm rethrow trampoline too.
+
+       * mini-llvm.c (mono_llvm_emit_method): Implement OP_RETHROW.
+
+       * method-to-ir.c (mono_method_to_ir): Emit a OP_NOT_REACHED after a rethrow.
+
+       * mini-llvm.c (emit_call): Compute the containing try clause correctly for nested
+       clauses.
+
+       * mini.c (create_jit_info): Print EH clause info for LLVM too.
+
+2010-05-28  Mark Probst  <mark.probst@gmail.com>
+
+       * method-to-ir.c (mono_method_to_ir): Emit a write barrier for
+       cpobj with reference types.
+
+2010-05-28  Mark Probst  <mark.probst@gmail.com>
+
+       * method-to-ir.c (mono_method_to_ir): Only explicitly add the
+       write barrier for reference types.
+
+2010-05-27  Zoltan Varga  <vargaz@gmail.com>
+
+       * mini-s390x.c (mono_arch_output_basic_block): Applied patch from Aurelien Minvielle
+       . Fix OP_ATOMIC_EXCHANGE_I4 on s390x. Fixes #609023.
+
+2010-05-31  Martin Baulig  <martin@ximian.com>
+
+       Fix #608271.
+
+       * debugger-agent.c (breakpoints_cleanup): Iterate over `event_requests', call
+       clear_breakpoint() on all breakpoint events and remove them from the list.
+
+2010-05-27  Martin Baulig  <martin@ximian.com>
+
+       Fix #605698.
+
+       * debugger-agent.c (method_commands, type_commands): Temporarily
+       set the appdomain while executing this method; do all metadata
+       calls in the debuggee's appdomain where user assemblies are loaded.
+
+2010-05-27  Zoltan Varga  <vargaz@gmail.com>
+
+       * mini-s390x.c (mono_arch_get_delegate_invoke_impls): Fix the s390x build.
+
+2010-05-26 Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * method-to-ir.c (mono_method_to_ir): Add missing write barrier to stobj.
+
+2010-05-26  Zoltan Varga  <vargaz@gmail.com>
+
+       * method-to-ir.c: Instead of freeing method headers immediately, save them in a list in
+       MonoCompile, and free them in mono_destroy_compile (), since the MonoType's in them could
+       be referenced even after the header is freed.
+
+       * aot-runtime.c: Remove the half finished support for decoding the .arm_exidx
+       section.
+
+2010-05-25  Zoltan Varga  <vargaz@gmail.com>
+
+2010-05-25  Bill Holmes  <billholmes54@gmail.com>
+
+       * genmdesc.c (main): Fixing the detection of the nacl switch.
+
+       Code is contributed under MIT/X11 license.
+
+2010-05-25  Zoltan Varga  <vargaz@gmail.com>
+
+       * exceptions-amd64.c (mono_arch_find_jit_info_ext): Adjust the ip for LMF frames too.
+
+       * mini-llvm.c aot-compiler.c: More LLVM 2.8 updates.
+
+       * mini.h (LLVM_CHECK_VERSION): New helper macro.
+
+2010-05-25  Miguel de Icaza  <miguel@novell.com>
+
+       * genmdesc.pl (build_spec): Add support for nacl: keyword also to
+       the Perl program
+
+       * genmdesc.c: Added support for nacl: key on the machine
+       description files to support the extra space required by Google
+       Native Client.
+
+2010-05-23  Zoltan Varga  <vargaz@gmail.com>
+
+       * mini.c (mono_jit_compile_method_inner): Propagate exceptions in one more place.
+
+2010-05-23  Zoltan Varga  <vargaz@gmail.com>
+
+       * mini.c (mono_jit_compile_method_inner): Propagate exceptions from
+       mono_runtime_class_init_full ().
+       (mono_jit_runtime_invoke): Ditto. Fixes #608073.
+
+2010-05-22  Zoltan Varga  <vargaz@gmail.com>
+
+       * mini-llvm.c mini-llvm-cpp.cpp: Update after LLVM 2.8 changes.
+
+2010-05-21  Zoltan Varga  <vargaz@gmail.com>
+
+       * mini-ppc.c (mono_arch_output_basic_block): Use ins->inst_c1 instead of p1, the
+       two are not the same on ilp32.
+
+2010-05-21  Zoltan Varga  <vargaz@gmail.com>
+
+       * mini.c (mono_jit_compile_method_inner): Remove a DISABLE_JIT block which was
+       added by mistake.
+
+       * mini-ppc.c: Fix the DISABLE_JIT build.
+
+2010-05-20  Zoltan Varga  <vargaz@gmail.com>
+
+       * aot-runtime.c (decode_resolve_method_ref): Rename this from decode_method_ref_2.
+       (make_writable): Remove this unused function.
+
+2010-05-20  Zoltan Varga  <vargaz@gmail.com>
+
+       * aot-compiler.c: Collect all information about a PLT entry into a separate MonoPltEntry
+       structure. Make the labels to plt entries local symbols instead of assembler local
+       labels, since tha latter causes problems for the iphone linker.
+
+2010-05-19  Zoltan Varga  <vargaz@gmail.com>
+
+       * mini-ppc.c (mono_ppc_is_direct_call_sequence): Handle one more case with ilp32.
+
+2010-05-17  Zoltan Varga  <vargaz@gmail.com>
+
+       * mini-ppc.c (mono_ppc_is_direct_call_sequence): Handle ilp32.
+       (ppc_patch_full): Ditto.
+
+       * mini-arm.c (mono_arch_build_imt_thunk): Fix the fail_tramp case.
+
+       * method-to-ir.c (mono_method_to_ir): Use fast generic virtual method invocation
+       if gshared is enabled, to avoid asserts in the trampoline code.
+
+       * mini-ia64.c (mono_arch_build_imt_thunk): Implement generalized imt thunks
+       on ia64.
+
 2010-05-15  Geoff Norton  <gnorton@novell.com>
 
        * dwarfwriter.c, xdebug.c: Fix a pretty large leak when running in