EnC Support for Generics (#85269)
authormikelle-rogers <45022607+mikelle-rogers@users.noreply.github.com>
Tue, 25 Apr 2023 17:32:19 +0000 (10:32 -0700)
committerGitHub <noreply@github.com>
Tue, 25 Apr 2023 17:32:19 +0000 (10:32 -0700)
commitafa9a930b827ca0aa5debd693a4731229838516c
treef87ed4bb06efab601e2908a9e64dde67823716e7
parent32c600f4714c3752df77648bc84aefdb2583913e
EnC Support for Generics (#85269)

* EnC non-functional changes
- Update inappropriate naming
- Update many logging statements
- Remove unused code

* EnC support for fields on generic types

* EnC support for methods on generic types

* Fix use after free introduced in EnC breakpoint.
Fix off by one for string logging.

* update new feature capabilities, JIT GUID

* Fix non-enc build

* Fix EnCFieldIndex check

* Remove IsFdPrivate assert

---------

Co-authored-by: Aaron R Robinson <arobins@microsoft.com>
Co-authored-by: Juan Hoyos <19413848+hoyosjs@users.noreply.github.com>
Co-authored-by: Tom McDonald <tommcdon@microsoft.com>
40 files changed:
docs/design/coreclr/botr/clr-abi.md
docs/design/coreclr/botr/method-descriptor.md
docs/design/coreclr/botr/shared-generics.md
docs/design/coreclr/botr/type-loader.md
src/coreclr/System.Private.CoreLib/src/System/Reflection/Metadata/MetadataUpdater.cs
src/coreclr/debug/daccess/dacdbiimpl.cpp
src/coreclr/debug/ee/controller.cpp
src/coreclr/debug/ee/controller.h
src/coreclr/debug/ee/controller.inl
src/coreclr/debug/ee/debugger.cpp
src/coreclr/debug/ee/debugger.h
src/coreclr/debug/ee/functioninfo.cpp
src/coreclr/debug/ee/rcthread.cpp
src/coreclr/inc/corinfo.h
src/coreclr/inc/jiteeversionguid.h
src/coreclr/inc/jithelpers.h
src/coreclr/tools/Common/JitInterface/CorInfoHelpFunc.cs
src/coreclr/utilcode/log.cpp
src/coreclr/vm/ceeload.cpp
src/coreclr/vm/ceeload.h
src/coreclr/vm/class.cpp
src/coreclr/vm/class.h
src/coreclr/vm/codeversion.cpp
src/coreclr/vm/crst.cpp
src/coreclr/vm/encee.cpp
src/coreclr/vm/encee.h
src/coreclr/vm/field.h
src/coreclr/vm/genericdict.cpp
src/coreclr/vm/generics.cpp
src/coreclr/vm/genmeth.cpp
src/coreclr/vm/jithelpers.cpp
src/coreclr/vm/jitinterface.cpp
src/coreclr/vm/memberload.cpp
src/coreclr/vm/method.cpp
src/coreclr/vm/method.hpp
src/coreclr/vm/methodtable.cpp
src/coreclr/vm/methodtable.h
src/coreclr/vm/methodtablebuilder.cpp
src/coreclr/vm/prestub.cpp
src/coreclr/vm/threadsuspend.cpp