X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;ds=sidebyside;f=mono%2Fmini%2FChangeLog;h=ea55855dfb13d42c65408bd3b70a98e621869819;hb=9be6e6df996102f0e76e7ba67166dd35c6620d04;hp=d6edfd88944a8d60e4eee6954f8532ba79108d3a;hpb=1ff88cb40bda51819c55d85b982f3f109d7c6e41;p=mono.git diff --git a/mono/mini/ChangeLog b/mono/mini/ChangeLog index d6edfd88944..ea55855dfb1 100644 --- a/mono/mini/ChangeLog +++ b/mono/mini/ChangeLog @@ -1,3 +1,286 @@ +2009-12-03 Zoltan Varga + + * mini.c (mini_method_compile): Call handle_exception_clauses () in the same + place it was called before too. + +2009-12-03 Zoltan Varga + + * mini.c (mono_jit_runtime_invoke): Avoid the call to mono_class_setup_vtable () + if no security manager is present, to speed up the AOT case. Call + mono_class_vtable () full with raise_on_error == TRUE instead. + +2009-12-03 Zoltan Varga + + * mini.c (mini_method_compile): Call handle_exception_clauses earlier so + the local optimization passes can take its result into account. Fixes + #559876. + + * exceptions.cs: Add a test. + +2009-01-24 Steven Munroe + + This patch is contributed under the terms of the MIT/X11 license + + * cpu-ppc64.md (load_memindex): Add loadi8_memindex. + +2009-12-03 Zoltan Varga + + * mini.h (MonoInst): Remove unused 'ssa_op' field. + + * debugger-agent.c: Rework the handling of stack traces of running threads to + avoid crashes if compute_frames () tries to walk the stack of running thread. + + * mini.c (mono_print_method_from_ip): Use mini_jit_info_table_find. + + * mini-exceptions.c (mono_jit_walk_stack_from_ctx_in_thread): Set frame->lmf. + + * mini.h (StackFrameInfo): Add an 'lmf' field. + +2009-12-02 Zoltan Varga + + * debugger-agent.c (suspend_current): Always set really_suspended. + + * debugger-agent.c (clear_event_request): Clear method entry/exit requests too. + + * exceptions-x86.c (mono_arch_get_restore_context): Restore EAX too. + +2009-12-01 Zoltan Varga + + * debugger-agent.c (vm_commands): Don't allow invokes on threads which are not + really suspended. + +2009-12-01 Zoltan Varga + + * cpu-ppc64.md (store_memindex): Add storei8_memindex. + +2009-12-01 Rodrigo Kumpera + + * mini-trampolines.c: Fix MSVC build. + +2009-12-01 Rodrigo Kumpera + + * mini-trampolines.c: Check for mono_method_get_vtable_slot failures. + +2009-11-30 Zoltan Varga + + * mini-arm.c (mono_arch_lowering_pass): Fix an assert which is hit when + the instruction following an OP_FCOMPARE is optimized away. + +2009-11-30 Zoltan Varga + + * aot-compiler.c (arch_emit_autoreg): Extract the auto-registration code from + emit_autoreg () into this arch-specific function. + + * aot-compiler.c (emit_exception_debug_info): Don't emit the length of the + code, it is no longer needed. + + * aot-runtime.c (decode_exception_debug_info): Don't read the code length. + + * mini.h: Bump AOT file format version. + + * aot-runtime.c (mono_aot_find_jit_info): Compute the length of the method + using the sorted_code_offsets array, instead of reading it from the + exception debug info. + (load_method): Call mono_aot_find_jit_info instead of + decode_exception_debug_info (). + + * aot-compiler.c (emit_exception_debug_info): Emit whenever the method was + LLVM compiled as a flag. + +2009-11-29 Zoltan Varga + + * debugger-agent.c (resume_thread): Fix a warning. + + * aot-compiler.c: Add an option to set the number of static rgctx trampolines + generated. + +2009-11-28 Zoltan Varga + + * aot-compiler.c aot-runtime.c: Get rid of a few global symbols, move their + contents to MonoAotFileInfo. + +2009-11-27 Zoltan Varga + + * aot-compiler.c aot-runtime.c: Reorganize the AOT file format once again. + Put all binary data into a giant blob, similarly to the way .net assemblies + store binary data. Emit offset tables in a compact form to reduce their size. + + * mini.h: Bump AOT file format version. + + * aot-compiler.c (emit_globals_table): Use temp_prefix instead of .L in a few + places. + + * aot-compiler.c (emit_globals_table): Emit a hash table for the globals, to + avoid linear searches at runtime. + + * aot-runtime.c (find_symbol): Update this to use the hash. + + * mini.h: Bump AOT file format version. + +2009-11-26 Zoltan Varga + + * aot-compiler.c (emit_klass_info): Save whenever the class has a generic + container. + + * aot-runtime.c (decode_cached_class_info): Set the is_generic_container field + too. + + * aot-compiler.c (mono_compile_assembly): Add a 'stats' option to print out + the distribution of got slot types. + + * mini.h (MonoDebugOptions): Add 'explicit_null_checks' option. + + * method-to-ir.c: Add support for generating explicit null checks. + +2009-11-25 Zoltan Varga + + * debugger-agent.c (vm_commands): Implement EXIT by invoking Environment.Exit () + on a random thread if possible. + + * aot-runtime.c (mono_aot_plt_resolve): Clean up the handling of function + descriptors a bit, add comments, handle RGCTX_FETCH/GENERIC_CLASS_INIT_TRAMPOLINE + correctly. + + * exceptions-ppc.c (mono_arch_find_jit_info_ext): Use mgreg_t as the type of + regs. Pass the real size of the regs array to mono_unwind_frame (). + + * unwind.c (mono_unwind_frame): Remove an incorrect assert, add more correct + ones instead. + +2009-11-24 Geoff Norton + + * mini-darwin.c: Work around apple bug rdar://7209349 See + http://openradar.appspot.com/7209349 for details. Synopsis, + CoreFoundation SIGTRAP's if you dlopen it off the main thread if its + never been initialized before. + +2009-11-24 Zoltan Varga + + * tramp-arm.c: Use blx instead of mov pc, reg to improve support for thumb. + + * mini-arm.c (mono_arm_thumb_supported): New helper function. + +2009-11-24 Zoltan Varga + + * cfold.c (mono_constant_fold_ins): Fix a problem in the previous change, + OP_SHL_IMM is not 32 bit. + +2009-11-24 Zoltan Varga + + * aot-compiler.c (encode_patch): Fix the encoding of R8 on big-endian systems. + +2009-11-24 Zoltan Varga + + * aot-compiler.c: Avoid infinite recursion when generic virtual recursion is + encountered. + + * debugger-agent.c (resume_vm): Signal the suspend_cond even if suspend_count + > 0 since some threads can resume if their resume_count is > 0. + (invoke_method): Avoid reading freed memory. + + * debugger-agent.c (process_suspend): Extract the suspend code from + process_single_step_inner () to a separate function. Rework the code to prevent + races between this function and thread interrupts. + + * debugger-agent.c (suspend_current): Check the resume_count field instead + of resume_one so suspends+resumes during single threaded invokes work + correctly. + +2009-11-23 Zoltan Varga + + * aot-compiler.c (emit_llvm_file): Enable some llvm optimizations which seem + to make the generated code smaller. + + * tramp-amd64.c (mono_arch_nullify_class_init_trampoline): Add a code + sequence generated by recent LLVM versions. + + * mini-llvm.c: Add support for a few simple cases which weren't supported + before. + + * mini-trampolines.c (mono_magic_trampoline): Don't call + mono_arch_get_vcall_slot () when llvm is enabled. + + * aot-compiler.c (emit_llvm_file): Add code to run the 'opt' llvm tool. + + * mini-trampolines.c (mono_magic_trampoline): Extract the bulk of this function + into a new function called common_call_trampoline () which is used by the + llvm vcall trampoline as well. + + * debugger-agent.c: Implement single threaded invokes. + + * debugger-agent.c: Revert change which broke the agent on linux. + + * method-to-ir.c (inline_method): Prevent infinite recursion. Fixes + #557606. + + * generics.cs: Add a test. + +2009-11-22 Zoltan Varga + + * debugger-agent.c: Fix the cygwin build. + +2009-11-21 Zoltan Varga + + * cprop.c: Remove this unused file. + +2009-11-21 Zoltan Varga + + * cfold.c (mono_constant_fold_ins): Fix constant folding of shr_imm. Fixes + #557262. + + * basic.cs: Add a test. + +2009-11-21 Zoltan Varga + + * method-to-ir.c (mono_method_to_ir): Use mono_use_llvm instead of ENABLE_LLVM + in one more place. + +2009-11-20 Zoltan Varga + + * mini.c mini-trampolines.c driver.c: Add a 'mono_use_llvm' flag to control + whenever the runtime uses LLVM code. Add a '--llvm' command line option to set + it. Use this flag to control llvm related code paths instead of #ifdef + ENABLE_LLVM, so a runtime configured without --enable-llvm can use LLVM compiled + AOT code. + + * aot-runtime.c aot-compiler.c: Add a 'flag' field to MonoAotFileInfo. + + * mini.h: Bump AOT file format version. + + * tramp-ppc.c (mono_arch_create_generic_class_init_trampoline_full): These + receive their argument in MONO_ARCH_VTABLE_REG, not in the first argument reg. + + * debugger-agent.c (create_event_list): Fix a crash if an empty assembly list + was used as an assembly filter. + +2009-11-19 Zoltan Varga + + * unwind.c: Fix support for ppc. + + * exceptions-ppc.c (mono_arch_find_jit_info): Change this to use dwarf frame + unwind info. Change to the mono_arch_find_jit_info_ext () interface. + +2009-11-19 Zoltan Varga + + * mini-ppc.c (mono_arch_emit_prolog): Fix a copy-paste error to fix the ppc64 + port. + (mono_arch_cpu_init): Don't set cpu_hw_flags to 0 at the end, this was somehow + added by the ps3 changes. + +2009-11-19 Zoltan Varga + + * mini-gc.c: Resurrect this, so at least it compiles. + + * debugger-agent.c (assembly_commands): Implement GET_NAME command. + +2009-11-18 Zoltan Varga + + * debugger-agent.c (mono_debugger_agent_handle_exception): Pass a MonoJitInfo to + create_event_list () so assembly filters can be used. + + * exceptions-ppc.c (mono_arch_find_jit_info): Fix the restoration of registers + from the LMF. + 2009-11-17 Zoltan Varga * debugger-agent.c (mono_debugger_agent_breakpoint_hit): Fix a warning.