Do TLS using pthreads if __thread keyword not supported.
[mono.git] / mono / metadata / ChangeLog
index 1dff7616fc097580b5ff6a1c8fd815a4c20380fa..d7ddedd6d180adb7f1ccc3295cf79b976ceb6b4d 100644 (file)
@@ -1,3 +1,264 @@
+2009-06-04  Mark Probst  <mark.probst@gmail.com>
+
+       * sgen-gc.c: Do TLS using pthread API if __thread keyword is not
+       supported.
+
+2009-06-04  Mark Probst  <mark.probst@gmail.com>
+
+       * sgen-gc.c: Disable TLA and managed allocation if the __thread
+       keyword is not supported.
+
+2009-06-03  Zoltan Varga  <vargaz@gmail.com>
+
+       * marshal.c (get_wrapper_target_class): New helper function.
+       (mono_marshal_get_runtime_invoke): Place runtime-invoke wrappers into
+       the <Module> class of the image. Fixes #509049.
+
+2009-06-01 Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * threads.c (ves_icall_System_Threading_Thread_Sleep_internal):
+       Check if the thread was interrupted and proccess it straight away.
+       Makes abortion much more responsive.
+
+2009-06-01 Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * threads.c (mono_thread_execute_interruption): Use atomic cas with
+       MonoThread::interruption_requested to match it's counterpart.
+
+       Fixes a hang in abort-stress-1 on a 2 core x86.
+
+       * threads.c (ves_icall_System_Threading_Thread_GetAbortExceptionState):
+       Fix warning.
+
+2009-06-01 Rodrigo Kumpera  <rkumpera@novell.com>
+
+       Change MonoImage::name_cache to be protected by the image lock
+       instead of the loader lock.
+
+       * appdomain.c (deregister_reflection_info_roots): Protect access
+       to name_cache.
+
+       * class.c (mono_image_init_name_cache): Change from the loader lock
+       to the image lock. Check if the cache wasn't already created.
+
+       * class.c: Change from the loader to the image lock.
+
+       * icall.c (ves_icall_System_Reflection_Assembly_GetNamespaces): Fix
+       the code to hold the image lock while iterating over name_cache and
+       not go into mono_array_new holding it.
+
+       * metadata-internals.h: Add a comment about this change.
+
+2009-06-01 Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * icall.c (ves_icall_System_Reflection_Assembly_InternalGetType):
+       Under the 2.0 profile raise the loader error.
+
+       Fixes #508532.
+
+2009-06-01 Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * marshal.c (mono_marshal_get_runtime_invoke): Emit the right kind
+       of ldind opcode for generic instances so we don't fail for direct wrappers.
+       This only affect direct calls.
+
+2009-05-31  Zoltan Varga  <vargaz@gmail.com>
+
+       * reflection.c (create_dynamic_mono_image): Fix warnings.
+
+       * generic-sharing.c (other_info_equal): Ditto.
+       
+2009-05-29 Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * metadata-verify.c: Implement field signature check.
+
+2009-05-29 Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * metadata-verify.c: Implement standalone signature check.
+
+2009-05-28 Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * metadata-verify.c: Implement methodref signature check.
+
+2009-05-28  Zoltan Varga  <vargaz@gmail.com>
+
+       * object-internals.h (MonoRuntimeCallbacks): New structure containing
+       callbacks supplied by the runtime.
+
+       * object.c (mono_install_callbacks): New internal function to install
+       the callbacks.
+
+       * object.c (mono_create_ftnptr): Move the implementation of this to
+       mini/.
+
+       * object.c (mono_get_addr_from_ftnptr): Ditto.  
+
+2009-05-27 Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * metadata-verify.c (parse_return_type): Proper byref check.
+       * metadata-verify.c (is_valid_method_signature): Check for zero arity
+       generic signatures and method params.
+
+2009-05-27 Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * metadata-verify.c (decode_signature_header): Fix bounds check.
+
+       * metadata-verify.c (parse_custom_mods): Check custom mods.
+
+       * metadata-verify.c (parse_type): Do initial basic verification
+       of valid values.
+       
+       * metadata-verify.c (is_valid_method_signature): Parse the generic
+       param count.
+
+2009-05-26 Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * icall.c (ves_icall_Type_GetMethodsByName): Virtual methods should be
+       discarded based on their most specific definition so we set the method_slots
+       array before checking if the method is acceptable or not.
+
+       Fixes #506757.
+
+2009-05-26  Mark Probst  <mark.probst@gmail.com>
+
+       * icall.c: Free the old array when resizing a mono_ptr_array.
+
+2009-05-26  Mark Probst  <mark.probst@gmail.com>
+
+       * reflection.c (create_dynamic_mono_image): Use mono_object_hash()
+       for the hashes whose keys are managed objects.
+
+2009-05-26  Mark Probst  <mark.probst@gmail.com>
+
+       * object-internals.h, threads.c: Set the execution context on
+       thread start here, not in corlib.
+
+       * appdomain.c: Bump corlib version.
+
+2009-05-27  Martin Baulig  <martin@ximian.com>
+
+       * mono-debug.c (mono_debug_init): Use `MONO_DEBUG_FORMAT_DEBUGGER'
+       if `_mono_debug_using_mono_debugger' is set to make things work
+       properly when embedding Mono.
+
+2009-05-25 Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * class.c (mono_class_setup_fields): Don't mark simd types as having
+       16 bytes alignment as the whole runtime doesn't support.
+
+2009-05-25 Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * metadata-verify.c (safe_read): Use endian safe read macros.
+
+2009-05-25  Zoltan Varga  <vargaz@gmail.com>
+
+       * object.c (mono_create_ftnptr): Don't allocate from the code mempool since
+       it is read-only when using full aot.
+
+2009-05-22 Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * metadata-verify.c (is_valid_method_signature): Verify parts
+       of the return type. Provide an error message in case of failure.
+
+2009-05-22 Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * metadata-verify.c (is_valid_method_signature): Verify the call conv.
+
+2009-05-22 Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * metadata-verify.c: Include the size prefix in the bounds check.
+
+2009-05-22  Miguel de Icaza  <miguel@novell.com>
+
+       * icall.c: Remove warnings.
+
+       * mono-config.c: Allow for CONFIG_CPU to be set in config.h and
+       prevent auto-detection based on GCC defines.
+
+       Add PS3
+
+       * metadata-verify.c: Do not include signal.h
+
+       * generic-sharing.c, marshal.c: Add returns to avoid some warning
+       messages.  Not sure why the g_assert_not_reached is not enough to
+       quiet the compiler.
+       
+
+       * appdomain.c: Remove code that is not used when
+       DISABLE_SHADOW_COPY is set.
+
+       * image.c: use g_getenv
+
+2009-05-21  Miguel de Icaza  <miguel@novell.com>
+
+       * reflection.c: Remove code that it not used with
+       DISABLE_REFLECTION_EMIT is defined.
+
+2009-05-21  Zoltan Varga  <vargaz@gmail.com>
+
+       * marshal.c (mono_marshal_get_runtime_invoke): Share more runtime
+       invoke wrappers.
+
+2009-05-20  Miguel de Icaza  <miguel@novell.com>
+
+       * socket-io.c
+       (ves_icall_System_Net_Sockets_Socket_Available_internal): Remove
+       the ifdef here and instead put that on io-layer
+
+2009-05-19 Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * metadata-verify.c: Verify the generic param constraint table.
+
+2009-05-19 Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * metadata-verify.c (verify_generic_param_table): Fix
+       thinko on the valid flags bits for generic params.
+
+2009-05-19 Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * metadata-verify.c: Verify the methodspec table.
+
+2009-05-19 Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * metadata-verify.c: Verify the generic param table.
+
+2009-05-19  Mark Probst  <mark.probst@gmail.com>
+
+       * sgen-gc.c: Store and use the count with REMSET_VTYPE.
+
+2009-05-19  Mark Probst  <mark.probst@gmail.com>
+
+       * sgen-gc.c: Use generation enum more consistently and use the
+       correct generation in mono_gc_register_for_finalization().
+
+2009-05-18 Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * metadata-verify.c: Verify the nested class table.
+
+2009-05-18 Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * metadata-verify.c: Verify the manifest resource table.
+
+2009-05-17  Zoltan Varga  <vargaz@gmail.com>
+
+       * debug-helpers.c (dis_one): Add little-endian support for ldstr.
+
+2009-05-16  Zoltan Varga  <vargaz@gmail.com>
+
+       * class.c (mono_class_get_vtable_entry): Avoid adding static-rgctx
+       wrappers, this is now done in the JIT.
+       
+       * class.c (mono_set_generic_sharing_supported): New internal function.
+       (mono_class_generic_sharing_enabled): Move the #ifdef stuff to the JIT.
+
+2009-05-15 Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * metadata-verify.c: Verify the exported type table.
+
+2009-05-15 Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * pedump.c (main): Fake an assembly for netmodules to make the verifier happy.
+
 2009-05-15 Rodrigo Kumpera  <rkumpera@novell.com>
 
        * metadata-verify.c: Verify the file table.