You've already forked linux-packaging-mono
Imported Upstream version 3.10.0
Former-commit-id: 172c8e3c300b39d5785c7a3e8dfb08ebdbc1a99b
This commit is contained in:
@@ -1 +1 @@
|
||||
bab4d6fb48c84d4a0685fd2942479155c9547019
|
||||
4525ff69ab35c533d92938550de86dddec4ed887
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
@@ -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 \
|
||||
|
||||
@@ -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@
|
||||
|
||||
@@ -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_ */
|
||||
@@ -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 (§ion->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(§ion->mutex);
|
||||
if (ret)
|
||||
g_error ("Failed to destroy mutex %p error code %d errno %d", §ion->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(§ion->mutex);
|
||||
if(ret==0) {
|
||||
return(TRUE);
|
||||
} else {
|
||||
return(FALSE);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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_ */
|
||||
@@ -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;
|
||||
|
||||
@@ -1 +1 @@
|
||||
d87bee7ec41981d2aa55d0cb2b5e9c3552032f2c
|
||||
169cb07617adb06ac4bcb88ea5cc6fd59adad7b6
|
||||
@@ -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;
|
||||
|
||||
@@ -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_ */
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
@@ -1 +1 @@
|
||||
aac85511c1d76e845222b1f0a50fec772d9538d7
|
||||
3b9662818ee7d2d392b131d660e23415e5166e46
|
||||
@@ -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);
|
||||
|
||||
@@ -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) {
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
@@ -1 +1 @@
|
||||
df1eda26820cc45243b96f9ec5d2874c9f234c6a
|
||||
d438803266c9de14353e3f53d8573be775264e57
|
||||
@@ -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
Reference in New Issue
Block a user