Implement fast il wrapper for v4 Monitor.Enter.
authorRodrigo Kumpera <kumpera@gmail.com>
Mon, 23 May 2011 21:27:07 +0000 (18:27 -0300)
committerRodrigo Kumpera <kumpera@gmail.com>
Mon, 23 May 2011 21:27:07 +0000 (18:27 -0300)
commit171e69041898f488f332c5a2fad71e40f5863c5d
tree863b5add27357354170f0d0fdb78c8a590c5984a
parent9b349370eb27bfe3bddb9d64bb69b44e8f8fd316
Implement fast il wrapper for v4 Monitor.Enter.

* monitor.c (mono_monitor_get_fast_enter_method): Add support
for v4 Enter.

* monitor.c (mono_monitor_is_il_fastpath_wrapper): New function
that returns true for any of the monitor il wrappers.

* runtime.c (mono_runtime_is_critical_method): New function
that reports if a given method is critical and must not be interrupted.

* mono-threads.c (is_thread_in_critical_region): As the runtime if
the top method is critical in addition to the GC.

* method-to-ir.c (mini_emit_inst_for_method): Enable the IL fastpath
for v4 Monitor.Enter.
mono/metadata/monitor.c
mono/metadata/object-internals.h
mono/metadata/runtime.c
mono/metadata/runtime.h
mono/mini/method-to-ir.c
mono/utils/mono-threads.c