2009-05-12 Zoltan Varga <vargaz@gmail.com>
[mono.git] / mono / mini / ChangeLog
index bcc8b9a7f3fee900aa6d5ef5c381505759f40582..b120b0d3abb42a64b3569796b0d1227b72f25317 100644 (file)
@@ -1,3 +1,112 @@
+2009-05-12  Zoltan Varga  <vargaz@gmail.com>
+
+       * aot-compiler.c (mono_compile_assembly): Don't emit imt thunk if the
+       arch doesn't support it.
+
+       * mini.c (mini_init): Don't disable IMT for full aot if the
+       architecture supports it.
+
+       * mini.h (MonoAotTrampoline): New enum containing the different types
+       of 'numerous' trampolines.
+       (MONO_AOT_FILE_VERSION): Bump this.
+
+       * aot-compiler.c aot-runtime.c: Unify the handling of specific and
+       static rgctx trampolines. Add support for full-aot IMT thunks.
+
+       * mini-amd64.h: Enable IMT for full aot.
+
+       * TestDriver.cs: Add a CategoryAttribute class and an --exclude option
+       to exclude tests belonging to a category.
+
+       * generics.cs: Mark some tests with a !FULLAOT category.
+
+       * Makefile.am (fullaotcheck): Run tests with --exclude !FULLAOT. Include
+       generics tests.
+
+2009-05-11  Zoltan Varga  <vargaz@gmail.com>
+
+       * aot-compiler.c (emit_and_reloc_code): Move the implementation of
+       MONO_PATCH_INFO_GOT_OFFSET to a separate arch-specific function.
+       (emit_plt): Fix a warning.
+
+2009-05-10  Zoltan Varga  <vargaz@gmail.com>
+
+       * aot-compiler.c aot-runtime.c: Fix the build by moving is_shared_got_patch
+       back into aot-compiler.c to a place where the other functions shared by
+       the runtime and aot compiler are.
+       
+       * aot-compiler.c aot-runtime.c: Emit the got addr using a separate symbol,
+       as done previously, instead of in MonoAotFileInfo, since pointers might have
+       alignment requirements.
+
+       * mini.h: Bump AOT file format version.
+
+2009-05-10  Miguel de Icaza  <miguel@novell.com>
+
+       * aot-runtime.c (mono_aot_is_shared_got_patch): Move this routine
+       that is used at runtime from the aot-compiler.c, this makes it
+       work on setups that remove the AOT compiler from the output
+       image. 
+
+2009-05-09  Zoltan Varga  <vargaz@gmail.com>
+
+       * mini-<ARCH>.h: Kill the MONO_ARCH_ENABLE_EMIT_STATE_OPT define.
+
+       * decompose.c (mono_decompose_long_opts): Move the ppc/sparc specific 
+       stuff to mono_arch_decompose_long_opts ().
+       (mono_decompose_opcode): Remove some dead code.
+
+2009-05-08  Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * method-to-ir.c (mono_method_to_ir): Fix boostrap of non amd64 builds
+       cmethod can be null for quite a some reasons.
+
+2009-05-08  Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * method-to-ir.c (mono_method_to_ir): Fix non amd64 builds.
+
+2009-05-08  Zoltan Varga  <vargaz@gmail.com>
+
+       * aot-compiler.c (arch_emit_got_access): Fix the aot-not-supported build.
+
+2009-05-08  Zoltan Varga  <vargaz@gmail.com>
+
+       * method-to-ir.c (mono_emit_call_args): Add a 'tail' flag argument.
+       (mono_method_to_ir): Use MONO_ARCH_USE_OP_TAIL_CALL macro to determine
+       whenever to make tail calls using OP_TAIL_CALL. Enable support for tail
+       calls returning structures by addr on amd64.
+
+       * mini-amd64.h (MONO_ARCH_USE_OP_TAIL_CALL): New arch-specific macro.
+
+       * iltests.il.in: Restructure the tail call tests a bit.
+       
+2009-05-07  Zoltan Varga  <vargaz@gmail.com>
+
+       * aot-compiler.c (add_wrappers): Add remoting-invoke-with-check wrappers
+       for virtual methods too.
+
+2009-05-06  Raja R Harinath  <harinath@hurrynot.org>
+
+       * method-to-ir.c (mono_method_to_ir): Revert change of 2009-05-02
+       due to regression in verifying System.dll.
+
+2009-05-06  Zoltan Varga  <vargaz@gmail.com>
+
+       * debug-mini.c (mono_debugger_method_has_breakpoint): Allow breakpoints
+       in dynamic methods.
+
+       * dwarfwriter.c (emit_class_dwarf_info): Add support for generic
+       instances.
+
+       * aot-compiler.c aot-runtime.c: Use our own hash function instead of
+       g_str_hash () which can change.
+
+       * driver.c (mini_regression): Disable optimizations not supported by
+       the cpu. Fixes #500019.
+
+       * aot-runtime.c (mono_aot_get_unwind_info): Fix the --enable-minimal=aot
+       build.
+
 2009-05-06  Zoltan Varga  <vargaz@gmail.com>
 
        * mini-llvm.c (mono_llvm_emit_method): Update the OP_TLS_GET implementation