Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/corert.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Nattress <simonn@microsoft.com>2016-01-05 02:16:16 +0300
committerSimon Nattress <simonn@microsoft.com>2016-01-14 05:13:04 +0300
commit69d12d925616ec536eb032bd2374495b201362a2 (patch)
treeb08f30cf7dbfe2fe8541b72b17c9f3e87d5129b3 /src/Native/Runtime/CMakeLists.txt
parent3ce25bbff31befe1ba3ea8b4bcf16b8fb6ef3542 (diff)
Interface dispatch support
Emit the supporting data structures for interface dispatch: - Interface dispatch cell for each call site providing the resolution function entry point as well as the interface type and interface method slot number - Interface map on EETypes specifying the list of interfaces they implement - Dispatch map that provides, for each type, the lookup rows for interface type, interface method slot, and implementing method's VTable slot - Dispatch map table that provides dispatch map pointers (the index into this table is stored on an EEType instead of a pointer to the map for space savings) Added a work-around in the runtime to provide access to the dispatch map table until full module headers are implemented
Diffstat (limited to 'src/Native/Runtime/CMakeLists.txt')
-rw-r--r--src/Native/Runtime/CMakeLists.txt5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/Native/Runtime/CMakeLists.txt b/src/Native/Runtime/CMakeLists.txt
index afafa46d8..af604f64c 100644
--- a/src/Native/Runtime/CMakeLists.txt
+++ b/src/Native/Runtime/CMakeLists.txt
@@ -1,6 +1,7 @@
set(COMMON_RUNTIME_SOURCES
allocheap.cpp
assert.cpp
+ CachedInterfaceDispatch.cpp
Crst.cpp
DebugEventSource.cpp
dllmain.cpp
@@ -77,6 +78,8 @@ if(WIN32)
list(APPEND RUNTIME_SOURCES_ARCH_ASM
${ARCH_SOURCES_DIR}/GC.${ASM_SUFFIX}
+ ${ARCH_SOURCES_DIR}/StubDispatch.${ASM_SUFFIX}
+ ${ARCH_SOURCES_DIR}/ManagedCalloutThunk.${ASM_SUFFIX}
)
else()
@@ -120,7 +123,7 @@ add_definitions(-DFEATURE_PROFILING)
add_definitions(-DFEATURE_REDHAWK)
add_definitions(-DVERIFY_HEAP)
add_definitions(-DCORERT)
-
+add_definitions(-DFEATURE_CACHED_INTERFACE_DISPATCH)
add_definitions(-D_LIB)
if(WIN32)