+2010-01-18 Zoltan Varga <vargaz@gmail.com>
+
+ * mini.c (mono_jit_compile_method_inner): Avoid reading cfg->prof_options
+ after cfg has been freed.
+
+2010-01-17 Zoltan Varga <vargaz@gmail.com>
+
+ * 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 <vargaz@gmail.com>
+
+ * 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<T> wrappers.
+
+2010-01-16 Zoltan Varga <vargaz@gmail.com>
+
+ * debugger-agent.c (decode_value): Fix the decoding of I/U/PTR.
+
+2010-01-16 Zoltan Varga <vargaz@gmail.com>
+
+ * 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 <vargaz@gmail.com>
+
+ * aot-compiler.c aot-runtime.c: Get rid of mono_aot_str_hash (), use
+ mono_metadata_str_hash () instead.
+
+2010-01-15 Zoltan Varga <vargaz@gmail.com>
+
+ * 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 <vargaz@gmail.com>
+
+ * 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 <vargaz@gmail.com>
+
+ * 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 <vargaz@gmail.com>
+
+ * 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 <mark.probst@gmail.com>
+
+ * method-to-ir.c (mini_emit_stobj): Use EMIT_NEW_CLASSCONST when
+ AOT compiling.
+
+Wed Jan 13 15:54:53 CET 2010 Paolo Molaro <lupus@ximian.com>
+
+ * 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 <vargaz@gmail.com>
+
+ * aot-runtime.c (load_aot_module): Add more comments to explain why referenced
+ assemblies need to be eagerly loaded.
+
+2010-01-12 Zoltan Varga <vargaz@gmail.com>
+
+ * dwarfwriter.c (emit_line_number_info): Fix the eglib case so it doesn't crash.
+
+2010-01-11 Zoltan Varga <vargaz@gmail.com>
+
+ * debugger-agent.c (mono_debugger_agent_parse_options): Allow onthrow without
+ an argument which matches any exception.
+
+2010-01-10 Zoltan Varga <vargaz@gmail.com>
+
+ * 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 <vargaz@gmail.com>
+
+ * mini-exceptions.c (mono_print_thread_dump_from_ctx): New helper function
+ callable from gdb.
+
+2010-01-10 Zoltan Varga <vargaz@gmail.com>
+
+ * mini.c (mono_print_method_from_ip): Fix the lookup of trampolines.
+
+2010-01-09 Zoltan Varga <vargaz@gmail.com>
+
+ * debugger-agent.c (transport_connect): comment out freeaddrinfo calls under win32,
+ since it is not supported in win2000.
+
+2010-01-08 Zoltan Varga <vargaz@gmail.com>
+
+ * 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 <rkumpera@novell.com>
+
+ * 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 <rkumpera@novell.com>
+
+ * 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 <rkumpera@novell.com>
+
+ * method-to-ir.c (mono_method_to_ir): Casts to variant interfaces
+ do an icall for now.
+
+2010-01-07 Zoltan Varga <vargaz@gmail.com>
+
+ * 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 <vargaz@gmail.com>
+
+ * aot-compiler.c (mono_xdebug_flush): Export it so it is present in
+ stripped binaries as well.
+
+2010-01-07 Zoltan Varga <vargaz@gmail.com>
+
+ * 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 <vargaz@gmail.com>
+
+ * 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 <vargaz@gmail.com>
+
+ * 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 <rkumpera@novell.com>
+
+ * mini.c (mono_compile_is_broken): Skip methods from serialization's
+ internal assembly.
+
+2010-01-04 Zoltan Varga <vargaz@gmail.com>
+
+ * mini.c (mini_method_compile): Fix a few memory leaks introduced by the
+ llvm code.
+
+2009-01-04 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * 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 <vargaz@gmail.com>
+
+ * 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 <vargaz@gmail.com>
+
+ * 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 <rkumpera@novell.com>
+
+ * mini.c:
+ * method-to.ir.c:
+ * mini-*.c: Properly handle generic enums.
+
+ Fixes #566294
+
+2009-12-28 Zoltan Varga <vargaz@gmail.com>
+
+ * 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 <vargaz@gmail.com>
+
+ * aot-compiler.c (add_wrappers): Don't use dyn runtime invoke for methods with
+ nullable parameters. Fixes #567351.
+
+2009-12-26 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * mini-trampolines.c (common_call_trampoline): Add assert for NULL resolved generic method.
+
+2009-12-26 Zoltan Varga <vargaz@gmail.com>
+
+ * mini-trampolines.c: Use mono_arch_get_this_arg_from_call () to avoid the slow
+ mono_get_generic_context_from_code () call.
+
+ * mini-<ARCH>.c: Get rid of mono_arch_find_this_arg (), it is no longer used.
+
+2009-12-25 Zoltan Varga <vargaz@gmail.com>
+
+ * aot-runtime.c (decode_klass_ref): Don't call mono_class_init (), its not
+ needed.
+
+2009-12-24 Sebastien Pouliot <sebastien@ximian.com>
+
+ * method-to-ir.c (mono_method_to_ir): Avoid SIGSEGV when
+ mono_method_get_signature returns NULL. Fix #567084
+
+2009-12-25 Zoltan Varga <vargaz@gmail.com>
+
+ * aot-runtime.c (find_extra_method): Call mono_aot_wrapper_name only once,
+ instead of once for each module.
+
+2009-12-22 Zoltan Varga <vargaz@gmail.com>
+
+ * 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 <vargaz@gmail.com>
+
+ * 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-<ARCH>.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 <vargaz@gmail.com>
+
+ * Makefile.am (AM_CFLAGS): Include LLVM_CFLAGS.
+
+ * mini-llvm.c: Avoid defining the __STDC_... macros if already defined.
+
+2009-12-21 Zoltan Varga <vargaz@gmail.com>
+
+ * exceptions-ppc.c (mono_ppc_set_func_into_sigctx): Fix the cross-compiler
+ build.
+
+2009-12-18 Zoltan Varga <vargaz@gmail.com>
+
+ * 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 <vargaz@gmail.com>
* tramp-x86.c (mono_arch_patch_callsite): Fix the call to