Imported Upstream version 3.10.0

Former-commit-id: 172c8e3c300b39d5785c7a3e8dfb08ebdbc1a99b
This commit is contained in:
Jo Shields
2014-10-04 11:27:48 +01:00
parent fe777c5c82
commit 8b9b85e7f5
970 changed files with 20242 additions and 31308 deletions

View File

@@ -1 +1 @@
bab4d6fb48c84d4a0685fd2942479155c9547019
4525ff69ab35c533d92938550de86dddec4ed887

View File

@@ -2791,12 +2791,12 @@ generate(MonoMethod *method, RuntimeMethod *rtm, unsigned char *is_bb_start)
g_hash_table_destroy (td.data_hash);
}
static CRITICAL_SECTION calc_section;
static mono_mutex_t calc_section;
void
mono_interp_transform_init (void)
{
InitializeCriticalSection(&calc_section);
mono_mutex_init_recursive(&calc_section);
}
MonoException *
@@ -2845,9 +2845,9 @@ mono_interp_transform_method (RuntimeMethod *runtime_method, ThreadContext *cont
if (method->iflags & (METHOD_IMPL_ATTRIBUTE_INTERNAL_CALL | METHOD_IMPL_ATTRIBUTE_RUNTIME)) {
MonoMethod *nm = NULL;
EnterCriticalSection(&calc_section);
mono_mutex_lock(&calc_section);
if (runtime_method->transformed) {
LeaveCriticalSection(&calc_section);
mono_mutex_unlock(&calc_section);
mono_profiler_method_end_jit (method, MONO_PROFILE_OK);
return NULL;
}
@@ -2880,13 +2880,13 @@ mono_interp_transform_method (RuntimeMethod *runtime_method, ThreadContext *cont
runtime_method->stack_size = sizeof (stackval); /* for tracing */
runtime_method->alloca_size = runtime_method->stack_size;
runtime_method->transformed = TRUE;
LeaveCriticalSection(&calc_section);
mono_mutex_unlock(&calc_section);
mono_profiler_method_end_jit (method, MONO_PROFILE_OK);
return NULL;
}
method = nm;
header = mono_method_get_header (nm);
LeaveCriticalSection(&calc_section);
mono_mutex_unlock(&calc_section);
}
g_assert ((signature->param_count + signature->hasthis) < 1000);
g_assert (header->max_stack < 10000);
@@ -2996,9 +2996,9 @@ mono_interp_transform_method (RuntimeMethod *runtime_method, ThreadContext *cont
}
/* the rest needs to be locked so it is only done once */
EnterCriticalSection(&calc_section);
mono_mutex_lock(&calc_section);
if (runtime_method->transformed) {
LeaveCriticalSection(&calc_section);
mono_mutex_unlock(&calc_section);
g_free (is_bb_start);
mono_profiler_method_end_jit (method, MONO_PROFILE_OK);
return NULL;
@@ -3042,7 +3042,7 @@ mono_interp_transform_method (RuntimeMethod *runtime_method, ThreadContext *cont
mono_profiler_method_end_jit (method, MONO_PROFILE_OK);
runtime_method->transformed = TRUE;
LeaveCriticalSection(&calc_section);
mono_mutex_unlock(&calc_section);
return NULL;
}

View File

@@ -13,7 +13,6 @@ OTHER_H = \
access.h \
collection.h \
context.h \
critical-sections.h \
error.h \
events.h \
handles.h \
@@ -43,9 +42,6 @@ OTHER_SRC = \
collection.h \
context.c \
context.h \
critical-sections.c \
critical-sections.h \
critical-section-private.h \
error.c \
error.h \
events.c \

View File

@@ -100,8 +100,7 @@ CONFIG_CLEAN_VPATH_FILES =
LTLIBRARIES = $(noinst_LTLIBRARIES)
libwapi_la_DEPENDENCIES =
am__libwapi_la_SOURCES_DIST = access.h collection.c collection.h \
context.c context.h critical-sections.c critical-sections.h \
critical-section-private.h error.c error.h events.c events.h \
context.c context.h error.c error.h events.c events.h \
event-private.h handles.c handles.h handles-private.h io.c \
io.h io-portability.c io-portability.h io-private.h io-layer.h \
locking.c macros.h messages.c messages.h misc.c misc-private.h \
@@ -114,11 +113,11 @@ am__libwapi_la_SOURCES_DIST = access.h collection.c collection.h \
types.h uglify.h versioninfo.c versioninfo.h wait.c wait.h \
wapi_glob.h wapi_glob.c wapi.h wapi-private.h wthreads.c \
io-layer-dummy.c
am__objects_1 = collection.lo context.lo critical-sections.lo error.lo \
events.lo handles.lo io.lo io-portability.lo locking.lo \
messages.lo misc.lo mutexes.lo posix.lo processes.lo \
security.lo semaphores.lo shared.lo sockets.lo system.lo \
timefuncs.lo versioninfo.lo wait.lo wapi_glob.lo wthreads.lo
am__objects_1 = collection.lo context.lo error.lo events.lo handles.lo \
io.lo io-portability.lo locking.lo messages.lo misc.lo \
mutexes.lo posix.lo processes.lo security.lo semaphores.lo \
shared.lo sockets.lo system.lo timefuncs.lo versioninfo.lo \
wait.lo wapi_glob.lo wthreads.lo
am__objects_2 =
am__objects_3 = io-layer-dummy.lo
@HOST_WIN32_FALSE@am_libwapi_la_OBJECTS = $(am__objects_1) \
@@ -403,7 +402,6 @@ OTHER_H = \
access.h \
collection.h \
context.h \
critical-sections.h \
error.h \
events.h \
handles.h \
@@ -433,9 +431,6 @@ OTHER_SRC = \
collection.h \
context.c \
context.h \
critical-sections.c \
critical-sections.h \
critical-section-private.h \
error.c \
error.h \
events.c \
@@ -564,7 +559,6 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/collection.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/context.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/critical-sections.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/error.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/events.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/handles.Plo@am__quote@

View File

@@ -1,18 +0,0 @@
/*
* critical-section-private.h: Private definitions for critical sections
*
* Author:
* Dick Porter (dick@ximian.com)
*
* Copyright (C) 2007 Novell, Inc.
*/
#ifndef _WAPI_CRITICAL_SECTION_PRIVATE_H_
#define _WAPI_CRITICAL_SECTION_PRIVATE_H_
#include <config.h>
#include <glib.h>
extern void _wapi_critical_section_cleanup (void);
#endif /* _WAPI_CRITICAL_SECTION_PRIVATE_H_ */

View File

@@ -1,115 +0,0 @@
/*
* critical-sections.c: Critical sections
*
* Author:
* Dick Porter (dick@ximian.com)
*
* (C) 2002 Ximian, Inc.
*/
#include <config.h>
#include <glib.h>
#include <pthread.h>
#include <errno.h>
#include <mono/io-layer/wapi.h>
#include <mono/io-layer/critical-section-private.h>
#include <mono/utils/mono-mutex.h>
/* A critical section is really just like a lightweight mutex. It
* can't be waited for, and doesn't have a handle.
*/
/**
* InitializeCriticalSection:
* @section: The critical section to initialise
*
* Initialises a critical section.
*/
void InitializeCriticalSection(WapiCriticalSection *section)
{
int ret;
ret = mono_mutex_init_recursive (&section->mutex);
g_assert (ret == 0);
}
/**
* InitializeCriticalSectionAndSpinCount:
* @section: The critical section to initialise.
* @spincount: The spin count for this critical section. Not
* currently used.
*
* Initialises a critical section and sets the spin count. This
* implementation just calls InitializeCriticalSection().
*
* Return value: %TRUE on success, %FALSE otherwise. (%FALSE never
* happens).
*/
gboolean InitializeCriticalSectionAndSpinCount(WapiCriticalSection *section,
guint32 spincount G_GNUC_UNUSED)
{
InitializeCriticalSection(section);
return(TRUE);
}
/**
* DeleteCriticalSection:
* @section: The critical section to delete.
*
* Releases all resources owned by critical section @section.
*/
void DeleteCriticalSection(WapiCriticalSection *section)
{
int ret;
ret = mono_mutex_destroy(&section->mutex);
if (ret)
g_error ("Failed to destroy mutex %p error code %d errno %d", &section->mutex, ret, errno);
}
/**
* SetCriticalSectionSpinCount:
* @section: The critical section to set
* @spincount: The new spin count for this critical section. Not
* currently used.
*
* Sets the spin count for the critical section @section. The spin
* count is currently ignored, and set to zero.
*
* Return value: The previous spin count. (Currently always zero).
*/
guint32 SetCriticalSectionSpinCount(WapiCriticalSection *section G_GNUC_UNUSED, guint32 spincount G_GNUC_UNUSED)
{
return(0);
}
/**
* TryEnterCriticalSection:
* @section: The critical section to try and enter
*
* Attempts to enter a critical section without blocking. If
* successful the calling thread takes ownership of the critical
* section.
*
* A thread can recursively call EnterCriticalSection() and
* TryEnterCriticalSection(), but must call LeaveCriticalSection() an
* equal number of times.
*
* Return value: %TRUE if the thread successfully locked the critical
* section, %FALSE otherwise.
*/
gboolean TryEnterCriticalSection(WapiCriticalSection *section)
{
int ret;
ret=mono_mutex_trylock(&section->mutex);
if(ret==0) {
return(TRUE);
} else {
return(FALSE);
}
}

View File

@@ -1,52 +0,0 @@
/*
* critical-sections.h: Critical sections
*
* Author:
* Dick Porter (dick@ximian.com)
*
* (C) 2002 Ximian, Inc.
*/
#ifndef _WAPI_CRITICAL_SECTIONS_H_
#define _WAPI_CRITICAL_SECTIONS_H_
#include <glib.h>
#include <pthread.h>
#include <mono/utils/mono-mutex.h>
G_BEGIN_DECLS
typedef struct _WapiCriticalSection WapiCriticalSection;
struct _WapiCriticalSection
{
guint32 depth;
mono_mutex_t mutex;
};
extern void InitializeCriticalSection(WapiCriticalSection *section);
extern gboolean InitializeCriticalSectionAndSpinCount(WapiCriticalSection *section, guint32 spincount);
extern void DeleteCriticalSection(WapiCriticalSection *section);
extern guint32 SetCriticalSectionSpinCount(WapiCriticalSection *section, guint32 spincount);
extern gboolean TryEnterCriticalSection(WapiCriticalSection *section);
/* These two are perf critical so avoid the wrapper function */
#define EnterCriticalSection(section) do { \
int ret = mono_mutex_lock(&(section)->mutex); \
if (ret != 0) \
g_warning ("Bad call to mono_mutex_lock result %d", ret); \
g_assert (ret == 0); \
} while (0)
#define LeaveCriticalSection(section) do { \
int ret = mono_mutex_unlock(&(section)->mutex); \
if (ret != 0) \
g_warning ("Bad call to mono_mutex_unlock result %d", ret); \
g_assert (ret == 0); \
} while (0)
G_END_DECLS
#endif /* _WAPI_CRITICAL_SECTIONS_H_ */

View File

@@ -37,7 +37,6 @@
#include <mono/io-layer/shared.h>
#include <mono/io-layer/collection.h>
#include <mono/io-layer/process-private.h>
#include <mono/io-layer/critical-section-private.h>
#include <mono/utils/mono-mutex.h>
#undef DEBUG_REFS
@@ -131,10 +130,10 @@ struct _WapiFileShareLayout *_wapi_fileshare_layout = NULL;
* 4MB array.
*/
static GHashTable *file_share_hash;
static CRITICAL_SECTION file_share_hash_mutex;
static mono_mutex_t file_share_hash_mutex;
#define file_share_hash_lock() EnterCriticalSection (&file_share_hash_mutex)
#define file_share_hash_unlock() LeaveCriticalSection (&file_share_hash_mutex)
#define file_share_hash_lock() mono_mutex_lock (&file_share_hash_mutex)
#define file_share_hash_unlock() mono_mutex_unlock (&file_share_hash_mutex)
guint32 _wapi_fd_reserve;
@@ -207,7 +206,7 @@ static void handle_cleanup (void)
if (file_share_hash) {
g_hash_table_destroy (file_share_hash);
DeleteCriticalSection (&file_share_hash_mutex);
mono_mutex_destroy (&file_share_hash_mutex);
}
for (i = 0; i < _WAPI_PRIVATE_MAX_SLOTS; ++i)
@@ -1664,7 +1663,7 @@ gboolean _wapi_handle_get_or_set_share (dev_t device, ino_t inode,
*/
if (!file_share_hash) {
file_share_hash = g_hash_table_new_full (wapi_share_info_hash, wapi_share_info_equal, NULL, g_free);
InitializeCriticalSection (&file_share_hash_mutex);
mono_mutex_init_recursive (&file_share_hash_mutex);
}
tmp.device = device;

View File

@@ -1 +1 @@
d87bee7ec41981d2aa55d0cb2b5e9c3552032f2c
169cb07617adb06ac4bcb88ea5cc6fd59adad7b6

View File

@@ -51,8 +51,6 @@ typedef WapiSecurityAttributes *LPSECURITY_ATTRIBUTES;
typedef WapiOverlapped *LPOVERLAPPED;
typedef WapiOverlappedCB LPOVERLAPPED_COMPLETION_ROUTINE;
typedef WapiThreadStart LPTHREAD_START_ROUTINE;
typedef WapiCriticalSection CRITICAL_SECTION;
typedef WapiCriticalSection *LPCRITICAL_SECTION;
typedef WapiFileTime FILETIME;
typedef WapiFileTime *LPFILETIME;
typedef WapiSystemTime SYSTEMTIME;

View File

@@ -16,7 +16,6 @@
#include <mono/io-layer/io.h>
#include <mono/io-layer/access.h>
#include <mono/io-layer/context.h>
#include <mono/io-layer/critical-sections.h>
#include <mono/io-layer/error.h>
#include <mono/io-layer/events.h>
#include <mono/io-layer/messages.h>
@@ -32,4 +31,6 @@
#include <mono/io-layer/versioninfo.h>
#include <mono/io-layer/wait.h>
#include <mono/utils/mono-mutex.h>
#endif /* _WAPI_WAPI_H_ */

View File

@@ -340,10 +340,4 @@ endif
endif
EXTRA_DIST = make-bundle.pl sample-bundle $(win32_sources) $(unix_sources) $(null_sources) runtime.h \
tpool-poll.c tpool-epoll.c tpool-kqueue.c Makefile.am.in
if HAS_EXTENSION_MODULE
else
Makefile.am: Makefile.am.in
cp $< $@
endif
tpool-poll.c tpool-epoll.c tpool-kqueue.c

View File

@@ -1,349 +0,0 @@
if HOST_WIN32
win32_sources = \
console-win32.c
platform_sources = $(win32_sources)
# Use -m here. This will use / as directory separator (C:/WINNT).
# The files that use MONO_ASSEMBLIES and/or MONO_CFG_DIR replace the
# / by \ if running under WIN32.
if CROSS_COMPILING
assembliesdir = ${libdir}
confdir = ${sysconfdir}
else
assembliesdir = `cygpath -m "${libdir}"`
confdir = `cygpath -m "${sysconfdir}"`
endif
export HOST_CC
# The mingw math.h has "extern inline" functions that dont appear in libs, so
# optimisation is required to actually inline them
AM_CFLAGS = -O
else
assembliesdir = $(exec_prefix)/lib
confdir = $(sysconfdir)
unix_sources = \
console-unix.c
platform_sources = $(unix_sources)
endif
if SHARED_MONO
if SUPPORT_BOEHM
bin_PROGRAMS = pedump
endif
endif
#
# libtool is not capable of creating static/shared versions of the same
# convenience lib, so we have to do it ourselves
#
if SUPPORT_SGEN
if DISABLE_EXECUTABLES
shared_sgen_libraries = libmonoruntimesgen.la
else
if SHARED_MONO
shared_sgen_libraries = libmonoruntimesgen.la
endif
endif
sgen_libraries = $(shared_sgen_libraries) libmonoruntimesgen-static.la
endif
if SUPPORT_BOEHM
if DISABLE_EXECUTABLES
shared_boehm_libraries = libmonoruntime.la
else
if SHARED_MONO
shared_boehm_libraries = libmonoruntime.la
endif
endif
boehm_libraries = $(shared_boehm_libraries) libmonoruntime-static.la
endif
if DISABLE_EXECUTABLES
noinst_LTLIBRARIES = $(shared_sgen_libraries) $(shared_boehm_libraries)
else
noinst_LTLIBRARIES = $(boehm_libraries) $(sgen_libraries)
endif
AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/mono $(LIBGC_CPPFLAGS) $(GLIB_CFLAGS) -DMONO_BINDIR=\"$(bindir)/\" -DMONO_ASSEMBLIES=\"$(assembliesdir)\" -DMONO_CFG_DIR=\"$(confdir)\"
#
# Make sure any prefix changes are updated in the binaries too.
#
# assembly.c uses MONO_ASSEMBLIES
# mono-config.c uses MONO_CFG_DIR
#
# This won't result in many more false positives than AC_DEFINEing them
# in configure.ac.
#
assembly.lo mono-config.lo: Makefile
CLEANFILES = mono-bundle.stamp
libmonoruntime_static_la_LIBADD = $(bundle_obj) $(libmonoruntime_la_LIBADD)
null_sources = \
console-null.c
null_gc_sources = \
null-gc.c
common_sources = \
$(platform_sources) \
assembly.c \
attach.h \
attach.c \
char-conversions.h \
cil-coff.h \
class.c \
class-internals.h \
cominterop.c \
cominterop.h \
console-io.h \
coree.c \
coree.h \
culture-info.h \
culture-info-tables.h \
debug-helpers.c \
debug-mono-symfile.h \
debug-mono-symfile.c \
decimal.c \
decimal.h \
domain-internals.h \
environment.c \
environment.h \
exception.c \
exception.h \
file-io.c \
file-io.h \
filewatcher.c \
filewatcher.h \
gc-internal.h \
gc-memfuncs.c \
icall.c \
icall-def.h \
image.c \
loader.c \
locales.c \
locales.h \
lock-tracer.c \
lock-tracer.h \
marshal.c \
marshal.h \
mempool.c \
mempool.h \
mempool-internals.h \
metadata.c \
metadata-verify.c \
metadata-internals.h \
method-builder.h \
method-builder.c \
mono-basic-block.c \
mono-basic-block.h \
mono-config.c \
mono-cq.c \
mono-cq.h \
mono-debug.h \
mono-debug.c \
mono-debug-debugger.h \
mono-debug-debugger.c \
mono-endian.c \
mono-endian.h \
mono-hash.h \
mono-mlist.c \
mono-mlist.h \
mono-perfcounters.c \
mono-perfcounters.h \
mono-perfcounters-def.h \
mono-ptr-array.h \
mono-wsq.c \
mono-wsq.h \
monitor.h \
nacl-stub.c \
normalization-tables.h \
number-formatter.h \
object-internals.h \
opcodes.c \
socket-io.c \
socket-io.h \
process.c \
process.h \
profiler.c \
profiler-private.h \
rand.h \
rand.c \
runtime.c \
security.c \
security.h \
security-core-clr.c \
security-core-clr.h \
security-manager.c \
security-manager.h \
string-icalls.c \
string-icalls.h \
sysmath.h \
sysmath.c \
tabledefs.h \
threads.c \
threads-types.h \
threadpool.c \
threadpool.h \
threadpool-internals.h \
verify.c \
verify-internals.h \
wrapper-types.h \
reflection-internals.h \
file-mmap-posix.c \
file-mmap-windows.c \
file-mmap.h \
object-offsets.h \
abi-details.h \
metadata-cross-helpers.c
# These source files have compile time dependencies on GC code
gc_dependent_sources = \
appdomain.c \
domain.c \
gc.c \
monitor.c \
mono-hash.c \
object.c \
reflection.c
boehm_sources = \
boehm-gc.c
sgen_sources = \
sgen-os-posix.c \
sgen-os-mach.c \
sgen-os-win32.c \
sgen-gc.c \
sgen-internal.c \
sgen-marksweep.c \
sgen-marksweep-fixed.c \
sgen-marksweep-par.c \
sgen-marksweep-fixed-par.c \
sgen-los.c \
sgen-protocol.c \
sgen-bridge.c \
sgen-bridge.h \
sgen-old-bridge.c \
sgen-new-bridge.c \
sgen-tarjan-bridge.c \
sgen-toggleref.c \
sgen-toggleref.h \
sgen-gc.h \
sgen-conf.h \
sgen-archdep.h \
sgen-cardtable.c \
sgen-cardtable.h \
sgen-pinning.c \
sgen-pinning.h \
sgen-pinning-stats.c \
sgen-workers.c \
sgen-workers.h \
sgen-gray.c \
sgen-gray.h \
sgen-major-copy-object.h \
sgen-minor-copy-object.h \
sgen-copy-object.h \
sgen-major-scan-object.h \
sgen-minor-scan-object.h \
sgen-protocol.h \
sgen-scan-object.h \
sgen-nursery-allocator.c \
sgen-hash-table.c \
sgen-hash-table.h \
sgen-descriptor.c \
sgen-descriptor.h \
sgen-alloc.c \
sgen-debug.c \
sgen-simple-nursery.c \
sgen-split-nursery.c \
sgen-memory-governor.c \
sgen-memory-governor.h \
sgen-stw.c \
sgen-fin-weak-hash.c \
sgen-layout-stats.c \
sgen-layout-stats.h \
sgen-qsort.c \
sgen-qsort.h
libmonoruntime_la_SOURCES = $(common_sources) $(gc_dependent_sources) $(null_gc_sources) $(boehm_sources)
libmonoruntime_la_CFLAGS = $(BOEHM_DEFINES)
libmonoruntimesgen_la_SOURCES = $(common_sources) $(gc_dependent_sources) $(sgen_sources)
libmonoruntimesgen_la_CFLAGS = $(SGEN_DEFINES)
libmonoruntime_static_la_SOURCES = $(libmonoruntime_la_SOURCES)
libmonoruntime_static_la_LDFLAGS = -static
libmonoruntime_static_la_CFLAGS = $(BOEHM_DEFINES)
libmonoruntimesgen_static_la_SOURCES = $(libmonoruntimesgen_la_SOURCES)
libmonoruntimesgen_static_la_LDFLAGS = -static
libmonoruntimesgen_static_la_CFLAGS = $(SGEN_DEFINES)
libmonoruntimeincludedir = $(includedir)/mono-$(API_VER)/mono/metadata
libmonoruntimeinclude_HEADERS = \
assembly.h \
attrdefs.h \
appdomain.h \
blob.h \
class.h \
debug-helpers.h \
debug-mono-symfile.h \
threads.h \
environment.h \
exception.h \
image.h \
loader.h \
metadata.h \
mono-config.h \
mono-debug.h \
mono-gc.h \
sgen-bridge.h \
object.h \
opcodes.h \
profiler.h \
reflection.h \
row-indexes.h \
tokentype.h \
verify.h
if DTRACE_G_REQUIRED
PEDUMP_DTRACE_OBJECT = pedump-dtrace.$(OBJEXT)
pedump-dtrace.$(OBJEXT): $(top_srcdir)/data/mono.d libmonoruntime.la ../io-layer/libwapi.la ../utils/libmonoutils.la
DTRACE="$(DTRACE)" DTRACEFLAGS="$(DTRACEFLAGS)" AR="$(AR)" $(SHELL) $(top_srcdir)/data/dtrace-prelink.sh \
--pic pedump-dtrace.$(OBJEXT) $(top_srcdir)/data/mono.d libmonoruntime.la ../io-layer/libwapi.la ../utils/libmonoutils.la
else
PEDUMP_DTRACE_OBJECT =
endif
if SHARED_MONO
if SUPPORT_BOEHM
pedump_SOURCES = \
pedump.c
pedump_LDADD = libmonoruntime.la ../io-layer/libwapi.la ../utils/libmonoutils.la \
$(LIBGC_LIBS) $(GLIB_LIBS) -lm $(LIBICONV) $(PEDUMP_DTRACE_OBJECT)
if PLATFORM_DARWIN
pedump_LDFLAGS=-framework CoreFoundation -framework Foundation
endif
endif
endif
EXTRA_DIST = make-bundle.pl sample-bundle $(win32_sources) $(unix_sources) $(null_sources) runtime.h \
tpool-poll.c tpool-epoll.c tpool-kqueue.c Makefile.am.in
if HAS_EXTENSION_MODULE
else
Makefile.am: Makefile.am.in
cp $< $@
endif

View File

@@ -1 +1 @@
aac85511c1d76e845222b1f0a50fec772d9538d7
3b9662818ee7d2d392b131d660e23415e5166e46

View File

@@ -88,9 +88,9 @@ typedef struct
gchar *filename;
} RuntimeConfig;
CRITICAL_SECTION mono_delegate_section;
mono_mutex_t mono_delegate_section;
CRITICAL_SECTION mono_strtod_mutex;
mono_mutex_t mono_strtod_mutex;
static gunichar2 process_guid [36];
static gboolean process_guid_set = FALSE;
@@ -250,9 +250,9 @@ mono_runtime_init (MonoDomain *domain, MonoThreadStartCB start_cb,
domain->domain = ad;
domain->setup = setup;
InitializeCriticalSection (&mono_delegate_section);
mono_mutex_init_recursive (&mono_delegate_section);
InitializeCriticalSection (&mono_strtod_mutex);
mono_mutex_init_recursive (&mono_strtod_mutex);
mono_thread_attach (domain);
mono_context_init (domain);

View File

@@ -170,9 +170,9 @@ mono_set_corlib_data (void *data, size_t size)
#endif
/* This protects loaded_assemblies and image->references */
#define mono_assemblies_lock() EnterCriticalSection (&assemblies_mutex)
#define mono_assemblies_unlock() LeaveCriticalSection (&assemblies_mutex)
static CRITICAL_SECTION assemblies_mutex;
#define mono_assemblies_lock() mono_mutex_lock (&assemblies_mutex)
#define mono_assemblies_unlock() mono_mutex_unlock (&assemblies_mutex)
static mono_mutex_t assemblies_mutex;
/* If defined, points to the bundled assembly information */
const MonoBundledAssembly **bundles;
@@ -739,7 +739,7 @@ mono_assemblies_init (void)
check_path_env ();
check_extra_gac_path_env ();
InitializeCriticalSection (&assemblies_mutex);
mono_mutex_init_recursive (&assemblies_mutex);
mono_mutex_init (&assembly_binding_mutex);
}
@@ -3142,7 +3142,7 @@ mono_assemblies_cleanup (void)
{
GSList *l;
DeleteCriticalSection (&assemblies_mutex);
mono_mutex_destroy (&assemblies_mutex);
mono_mutex_destroy (&assembly_binding_mutex);
for (l = loaded_assembly_bindings; l; l = l->next) {

View File

@@ -99,9 +99,9 @@ static gboolean stop_receiver_thread;
static gboolean needs_to_start, started;
#define agent_lock() EnterCriticalSection (&agent_mutex)
#define agent_unlock() LeaveCriticalSection (&agent_mutex)
static CRITICAL_SECTION agent_mutex;
#define agent_lock() mono_mutex_lock (&agent_mutex)
#define agent_unlock() mono_mutex_unlock (&agent_mutex)
static mono_mutex_t agent_mutex;
static void transport_connect (void);
@@ -193,7 +193,7 @@ mono_attach_parse_options (char *options)
void
mono_attach_init (void)
{
InitializeCriticalSection (&agent_mutex);
mono_mutex_init_recursive (&agent_mutex);
config.enabled = TRUE;
}

View File

@@ -455,7 +455,7 @@ on_gc_notification (GCEventType event)
mono_perfcounters->gc_gen0size = heap_size;
}
#endif
gc_stats.major_gc_time_usecs += (mono_100ns_ticks () - gc_start_time) / 10;
gc_stats.major_gc_time += mono_100ns_ticks () - gc_start_time;
mono_trace_message (MONO_TRACE_GC, "gc took %d usecs", (mono_100ns_ticks () - gc_start_time) / 10);
break;
}

View File

@@ -1 +1 @@
df1eda26820cc45243b96f9ec5d2874c9f234c6a
d438803266c9de14353e3f53d8573be775264e57

View File

@@ -76,9 +76,9 @@ enum {
#undef OPDEF
/* This mutex protects the various cominterop related caches in MonoImage */
#define mono_cominterop_lock() EnterCriticalSection (&cominterop_mutex)
#define mono_cominterop_unlock() LeaveCriticalSection (&cominterop_mutex)
static CRITICAL_SECTION cominterop_mutex;
#define mono_cominterop_lock() mono_mutex_lock (&cominterop_mutex)
#define mono_cominterop_unlock() mono_mutex_unlock (&cominterop_mutex)
static mono_mutex_t cominterop_mutex;
/* STDCALL on windows, CDECL everywhere else to work with XPCOM and MainWin COM */
#ifdef HOST_WIN32
@@ -535,7 +535,7 @@ mono_cominterop_init (void)
{
const char* com_provider_env;
InitializeCriticalSection (&cominterop_mutex);
mono_mutex_init_recursive (&cominterop_mutex);
com_provider_env = g_getenv ("MONO_COM");
if (com_provider_env && !strcmp(com_provider_env, "MS"))
@@ -567,7 +567,7 @@ mono_cominterop_init (void)
void
mono_cominterop_cleanup (void)
{
DeleteCriticalSection (&cominterop_mutex);
mono_mutex_destroy (&cominterop_mutex);
}
void

Some files were not shown because too many files have changed in this diff Show More