diff options
Diffstat (limited to 'src/vm/gcenv.h')
-rw-r--r-- | src/vm/gcenv.h | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/src/vm/gcenv.h b/src/vm/gcenv.h new file mode 100644 index 0000000000..08dcc711ae --- /dev/null +++ b/src/vm/gcenv.h @@ -0,0 +1,76 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. + +#ifndef GCENV_H_ +#define GCENV_H_ + +// +// Extra VM headers required to compile GC-related files +// + +#include "finalizerthread.h" + +#include "threadsuspend.h" + +#ifdef FEATURE_COMINTEROP +#include <windows.ui.xaml.h> +#endif + +#include "stubhelpers.h" + +#include "eeprofinterfaces.inl" + +#ifdef GC_PROFILING +#include "eetoprofinterfaceimpl.h" +#include "eetoprofinterfaceimpl.inl" +#include "profilepriv.h" +#endif + +#ifdef DEBUGGING_SUPPORTED +#include "dbginterface.h" +#endif + +#ifdef FEATURE_COMINTEROP +#include "runtimecallablewrapper.h" +#endif // FEATURE_COMINTEROP + +#ifdef FEATURE_REMOTING +#include "remoting.h" +#endif + +#ifdef FEATURE_UEF_CHAINMANAGER +// This is required to register our UEF callback with the UEF chain manager +#include <mscoruefwrapper.h> +#endif // FEATURE_UEF_CHAINMANAGER + +#define GCMemoryStatus MEMORYSTATUSEX + +#include "util.hpp" + +#include "gcenv.ee.h" +#include "gcenv.os.h" +#include "gcenv.interlocked.h" +#include "gcenv.interlocked.inl" + +#include "../gc/softwarewritewatch.h" + +namespace ETW +{ + typedef enum _GC_ROOT_KIND { + GC_ROOT_STACK = 0, + GC_ROOT_FQ = 1, + GC_ROOT_HANDLES = 2, + GC_ROOT_OLDER = 3, + GC_ROOT_SIZEDREF = 4, + GC_ROOT_OVERFLOW = 5 + } GC_ROOT_KIND; +}; + +#ifdef PLATFORM_UNIX +#define _tcslen wcslen +#define _tcscpy wcscpy +#define _tfopen _wfopen +#endif + +#endif // GCENV_H_ |