summaryrefslogtreecommitdiff
path: root/src/vm/specialstatics.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/vm/specialstatics.h')
-rw-r--r--src/vm/specialstatics.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/src/vm/specialstatics.h b/src/vm/specialstatics.h
new file mode 100644
index 0000000000..8a13169e8c
--- /dev/null
+++ b/src/vm/specialstatics.h
@@ -0,0 +1,40 @@
+// 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.
+
+/*===========================================================================
+**
+** File: SpecialStatics.h
+**
+**
+** Purpose: Defines the data structures for context relative statics.
+**
+**
+**
+=============================================================================*/
+#ifndef _H_SPECIALSTATICS_
+#define _H_SPECIALSTATICS_
+
+// Data structure for storing special context relative static data.
+typedef struct _STATIC_DATA
+{
+ DWORD cElem;
+ PTR_VOID dataPtr[0];
+
+#ifdef DACCESS_COMPILE
+ static ULONG32 DacSize(TADDR addr)
+ {
+ DWORD cElem = *PTR_DWORD(addr);
+ return offsetof(struct _STATIC_DATA, dataPtr) +
+ cElem * sizeof(TADDR);
+ }
+
+ void EnumMemoryRegions(CLRDataEnumMemoryFlags flags);
+#endif
+
+} STATIC_DATA;
+typedef SPTR(STATIC_DATA) PTR_STATIC_DATA;
+
+typedef SimpleList<OBJECTHANDLE> ObjectHandleList;
+
+#endif