diff options
author | Jan Vorlicek <janvorli@microsoft.com> | 2018-10-17 16:20:36 -0700 |
---|---|---|
committer | Jan Kotas <jkotas@microsoft.com> | 2018-10-17 16:20:36 -0700 |
commit | 2ac658f8df5ba07b68e1d06482089ca49ac83fc3 (patch) | |
tree | ae684ccd231d2a899489d4cddf3bcd3fdd173272 /src/vm/appdomain.hpp | |
parent | 143d5a2ebb0c49e33ed60b9fb69cedd0aeffe3d1 (diff) | |
download | coreclr-2ac658f8df5ba07b68e1d06482089ca49ac83fc3.tar.gz coreclr-2ac658f8df5ba07b68e1d06482089ca49ac83fc3.tar.bz2 coreclr-2ac658f8df5ba07b68e1d06482089ca49ac83fc3.zip |
Fix collectible NativeCallable UMThunkEntry lifetime (#20438)
* Fix collectible NativeCallable UMThunkEntry lifetime
The UMEntryThunk cache entries created for NativeCallable target methods
for collectible classes were not properly cleaned up at the unload time.
This change fixes that by adding UMEntryThunkCache on LoaderAllocator
and using it for entries belonging to NativeCallable targets on
collectible classes. The cache is created lazily.
* Reflect PR feedback
Remove the UMEntryThunk cache from the AppDomain and leave it just on
the LoaderAllocator.
Diffstat (limited to 'src/vm/appdomain.hpp')
-rw-r--r-- | src/vm/appdomain.hpp | 7 |
1 files changed, 0 insertions, 7 deletions
diff --git a/src/vm/appdomain.hpp b/src/vm/appdomain.hpp index 2c838d1d51..5819c340fc 100644 --- a/src/vm/appdomain.hpp +++ b/src/vm/appdomain.hpp @@ -67,7 +67,6 @@ class DomainModule; class DomainAssembly; struct InteropMethodTableData; class LoadLevelLimiter; -class UMEntryThunkCache; class TypeEquivalenceHashTable; class StringArrayList; @@ -3394,10 +3393,6 @@ private: // IL stub cache with fabricated MethodTable parented by a random module in this AD. ILStubCache m_ILStubCache; - // U->M thunks created in this domain and not associated with a delegate. - // The cache is keyed by MethodDesc pointers. - UMEntryThunkCache *m_pUMEntryThunkCache; - // The number of times we have entered this AD ULONG m_dwThreadEnterCount; // The number of threads that have entered this AD, for ADU only @@ -3475,8 +3470,6 @@ public: BOOL IsBindingModelLocked(); BOOL LockBindingModel(); - UMEntryThunkCache *GetUMEntryThunkCache(); - ILStubCache* GetILStubCache() { LIMITED_METHOD_CONTRACT; |