X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mono%2Fmini%2FChangeLog;h=1eb816a4325caa0d279aa9318ea1ec9dfb1b17d9;hb=430ebd1982d79a85e58be0dad04c42249b65cf56;hp=9d958e0119e5fd8b453152f2e746930411bfb90f;hpb=ca3dbf2201c7afadcef5797cd60edbba06f42f59;p=mono.git diff --git a/mono/mini/ChangeLog b/mono/mini/ChangeLog old mode 100644 new mode 100755 index 9d958e0119e..1eb816a4325 --- a/mono/mini/ChangeLog +++ b/mono/mini/ChangeLog @@ -1,3 +1,331 @@ +2010-01-18 Zoltan Varga + + * mini.c (mono_jit_compile_method_inner): Avoid reading cfg->prof_options + after cfg has been freed. + +2010-01-17 Zoltan Varga + + * branch-opts.c (mono_branch_optimize_exception_target): Stop the optimization + if a clause is skipped because it uses the exception object, since it could + have caught the exception. + + * exceptions.cs: Add a test. + +2010-01-16 Zoltan Varga + + * mini-trampolines.c (mono_create_static_rgctx_trampoline): Add an assert. + + * aot-runtime.c (mono_aot_get_method): Handle ftnptr's correctly for the + ICollection wrappers. + +2010-01-16 Zoltan Varga + + * debugger-agent.c (decode_value): Fix the decoding of I/U/PTR. + +2010-01-16 Zoltan Varga + + * mini-amd64.c (emit_call_body): Always use near calls when AOTing even if + NOMAP32BIT or optimize_for_xen is set. + +2010-01-16 Zoltan Varga + + * aot-compiler.c aot-runtime.c: Get rid of mono_aot_str_hash (), use + mono_metadata_str_hash () instead. + +2010-01-15 Zoltan Varga + + * ir-emit.h (MONO_EMIT_NEW_ICOMPARE_IMM): Use sizeof (mgreg_t) instead of + sizeof (void*). + + * unwind.c (mono_unwind_frame): Use mgreg_t instead of gssize. + +2010-01-15 Zoltan Varga + + * ir-emit.h (MONO_EMIT_NEW_CHECK_THIS): Emit an explicit null check if the + flag is set. + + * mini-ppc.c (mono_arch_emit_exceptions): Compute the size of the exception + throwing code correctly. + + * mini.h (MONO_AOT_FILE_VERSION): Bump this because of the IMT hashing changes. + +2010-01-15 Zoltan Varga + + * aot-runtime.c (mono_aot_plt_resolve): Reenable the previous assert for + ftnptrs created by us, handle RGCTX_FETCH correctly. + (mono_aot_get_lazy_fetch_trampoline): Add an ftnptr. + + * mini-trampolines.c (mono_create_generic_class_init_trampoline): Remove the + ftnptr added by mono_aot_get_named_code (). + +2010-01-14 Zoltan Varga + + * mini-arm.c: Fix a few LLVM problems. + + * mini-llvm.c (simd_class_to_llvm_type): Fix compilation on !x86/amd64. + +2010-01-13 Mark Probst + + * method-to-ir.c (mini_emit_stobj): Use EMIT_NEW_CLASSCONST when + AOT compiling. + +Wed Jan 13 15:54:53 CET 2010 Paolo Molaro + + * jit.h, method-to-ir.c: added ability to set the policy for + inserting breakpoints from the break IL instruction or the + Debugger.Break () API call. + +2010-01-13 Zoltan Varga + + * aot-runtime.c (load_aot_module): Add more comments to explain why referenced + assemblies need to be eagerly loaded. + +2010-01-12 Zoltan Varga + + * dwarfwriter.c (emit_line_number_info): Fix the eglib case so it doesn't crash. + +2010-01-11 Zoltan Varga + + * debugger-agent.c (mono_debugger_agent_parse_options): Allow onthrow without + an argument which matches any exception. + +2010-01-10 Zoltan Varga + + * method-to-ir.c (mono_emit_method_call_full): Avoid the virt->nonvirt + optimization if the called method is gshared and marshalbyref, since gshared + methods can' have wrappers. Fixes #569390. + + * generics.cs: Add a test. + +2010-01-10 Zoltan Varga + + * mini-exceptions.c (mono_print_thread_dump_from_ctx): New helper function + callable from gdb. + +2010-01-10 Zoltan Varga + + * mini.c (mono_print_method_from_ip): Fix the lookup of trampolines. + +2010-01-09 Zoltan Varga + + * debugger-agent.c (transport_connect): comment out freeaddrinfo calls under win32, + since it is not supported in win2000. + +2010-01-08 Zoltan Varga + + * aot-runtime.c (load_image): Add a SET_ERROR argument to set the loader + error if loading an assembly fails. + (mono_aot_plt_resolve): Return NULL instead of asserting if loading fails. + + * mini-trampolines.c (mono_aot_plt_trampoline): Throw a pending loader error + if exists. + + * aot-runtime.c (decode_exception_debug_info): Set jinfo->from_llvm for LLVM + compiled methods. + + * mini-llvm-cpp.cpp: Remove the unused ctx variable. + + * mini-llvm.c (mono_llvm_emit_method): Add some comments about why aot+clauses + is not supported yet. + + * unwind.c (DW_EH_PE_absptr): Add more DW_EH_PE_ constants. + +2010-01-07 Rodrigo Kumpera + + * method-to-ir.c: All types with variant arguments must fallback to the + slow path. This makes cast of variant delegates work. + + * mini-trampolines.c (mono_get_vcall_slot_addr): Add new variance_used out + argument that is set to TRUE is the returned vtable slot is for a variant + interface. Changed a g_print + g_assert_not_reached to a g_error. + + * mini-trampilines.c (common_call_trampoline): Handle variant interfaces in + a similar fashion of generic virtual methods. + +2010-01-07 Rodrigo Kumpera + + * helpers.c (mono_disassemble_code): Fix a g_hash_table warning + when cfg is null. + + * mini-trampolines.c (mono_convert_imt_slot_to_vtable_slot): Convert a given + method using a variance aware function. + + * mini-x86.c: Add support for dumping IMT thunks if DEBUG_IMT is defined. + +2010-01-07 Rodrigo Kumpera + + * method-to-ir.c (mono_method_to_ir): Casts to variant interfaces + do an icall for now. + +2010-01-07 Zoltan Varga + + * mini-llvm-cpp.cpp (mono_llvm_create_ee): Add an ugly hack to fix #564695. + If LLVM decides to set the code model to Large, reset it to Default. + +2010-01-07 Zoltan Varga + + * aot-compiler.c (mono_xdebug_flush): Export it so it is present in + stripped binaries as well. + +2010-01-07 Zoltan Varga + + * mini-trampolines.c (common_call_trampoline): Add an rgctx trampoline if a shared + method is called from LLVM compiled code, as that code can't pass an rgctx arg. + + * mini-llvm.c (mono_llvm_emit_method): Enable calls to methods needing an rgctx + reg. + +2010-01-06 Zoltan Varga + + * mini.c (mini_method_compile): Extract the JIT info creation code into a + separate function. + + * mini-llvm.c (mono_llvm_emit_method): Pass the info in MonoExceptionClause + as the type info to llvm.eh.selector. + (exception_cb): Use the type info for filling out some fields of + MonoJitExceptionInfo like the flags and the exception class. This is needed + because the LLVM produced exception handling clauses might not match the original + IL clauses, i.e. there might be more than one LLVM clause for one IL clause. + + * unwind.c (mono_unwind_decode_fde): Extract the LSDA decoding code into a + separate function. Add an extra argument which returns the type infos + corresponding to the exception clauses. + + * mini.c (mini_method_compile): Enable LLVM compilation of methods having + exception handling clauses. + +2010-01-04 Zoltan Varga + + * mini-trampolines.c (mono_convert_imt_slot_to_vtable_slot): Call + mono_method_get_vtable_slot () instead of accessing imt_method->slot directly, + to fix an AOT case. + +2010-01-04 Rodrigo Kumpera + + * mini.c (mono_compile_is_broken): Skip methods from serialization's + internal assembly. + +2010-01-04 Zoltan Varga + + * mini.c (mini_method_compile): Fix a few memory leaks introduced by the + llvm code. + +2009-01-04 Rodrigo Kumpera + + * mini.c (mini_method_compile): Verify the method before calling + mono_compile_create_vars as this might crash since it uses method + information. + + Fixes #560196. + +2010-01-04 Zoltan Varga + + * method-to-ir.c (mono_method_to_ir): Avoid calling mono_class_vtable () in + one case if AOTing, since the class might not be a concrete class. + +2010-01-03 Zoltan Varga + + * mini-codegen.c abcremoval.c: Remove the duplicate g_slist_append_mempool + functions which are now defined in mempool-internals.h. + + * mini.c (mini_free_jit_domain_info): Free the seq point hash tables. + + * mini-llvm.c (mono_llvm_emit_method): Handle OP_ABS. + +2009-12-30 Rodrigo Kumpera + + * mini.c: + * method-to.ir.c: + * mini-*.c: Properly handle generic enums. + + Fixes #566294 + +2009-12-28 Zoltan Varga + + * method-to-ir.c (mono_method_to_ir): Handle the failure of mono_class_vtable () + in a few more places. + +2009-12-27 Zoltan Varga + + * aot-compiler.c (add_wrappers): Don't use dyn runtime invoke for methods with + nullable parameters. Fixes #567351. + +2009-12-26 Rodrigo Kumpera + + * mini-trampolines.c (common_call_trampoline): Add assert for NULL resolved generic method. + +2009-12-26 Zoltan Varga + + * mini-trampolines.c: Use mono_arch_get_this_arg_from_call () to avoid the slow + mono_get_generic_context_from_code () call. + + * mini-.c: Get rid of mono_arch_find_this_arg (), it is no longer used. + +2009-12-25 Zoltan Varga + + * aot-runtime.c (decode_klass_ref): Don't call mono_class_init (), its not + needed. + +2009-12-24 Sebastien Pouliot + + * method-to-ir.c (mono_method_to_ir): Avoid SIGSEGV when + mono_method_get_signature returns NULL. Fix #567084 + +2009-12-25 Zoltan Varga + + * aot-runtime.c (find_extra_method): Call mono_aot_wrapper_name only once, + instead of once for each module. + +2009-12-22 Zoltan Varga + + * debugger-agent.c (ss_start): Implement step over for the last sequence + point in methods. + + * mini.c (mono_save_seq_point_info): Don't link sequence points which don't + have the STEP_LOC flag set. + + * aot-runtime.c (decode_klass_ref): Avoid a crash if a decode_klass_ref () call + fails. Fixes #566689. + +2009-12-21 Zoltan Varga + + * mini.c (mono_add_seq_point): New helper function. + (mono_save_seq_point_info): New function to save sequence point info, extracted + from mini_method_compile (). + + * mini-.c: Call mono_add_seq_point to remember sequence points. + + * mini.h (MonoSeqPointInfo): New structure containing information about + the sequence points of a JITted method. + (MonoBasicBlock): Add 'seq_points' and 'last_seq_point' fields. Remove unused + 'bucket' field. + + * mini.c debugger-agent.c aot-compiler.c aot-runtime.c: Change the way sequence + point information is stored, use a MonoSeqPointInfo structure instead of a + GPtrArray. For each seq point, compute a list of successor seq points. + + * debugger-agent.c: Use the successor list to implement step-over more + efficiently: instead of single stepping until a different line/IL offset is + reached, place breakpoints into all successor seq points. + + * mini.h: Bump AOT file format version. + +2009-12-21 Zoltan Varga + + * Makefile.am (AM_CFLAGS): Include LLVM_CFLAGS. + + * mini-llvm.c: Avoid defining the __STDC_... macros if already defined. + +2009-12-21 Zoltan Varga + + * exceptions-ppc.c (mono_ppc_set_func_into_sigctx): Fix the cross-compiler + build. + +2009-12-18 Zoltan Varga + + * mini-x86.c (mono_arch_get_argument_info): Allocate memory for CallInfo using + alloca as g_malloc is not signal safe. + 2009-12-18 Zoltan Varga * tramp-x86.c (mono_arch_patch_callsite): Fix the call to