PE loader/image cleanups. No-copy mapping of R2R PEs on Windows. (#61938)
authorVladimir Sadov <vsadov@microsoft.com>
Tue, 14 Dec 2021 18:23:57 +0000 (10:23 -0800)
committerGitHub <noreply@github.com>
Tue, 14 Dec 2021 18:23:57 +0000 (10:23 -0800)
commit35e4e97867db6bb2cc1c9f1e91c80dd80759e259
tree38bdf83c275487899d1ca8c542434c515d647aa8
parent842f4d76a8d9344fa6d2e7dbd1534b7b7a6fec57
PE loader/image cleanups. No-copy mapping of R2R PEs on Windows. (#61938)

* removed IMAGE_MAPPED

* removed RawImageLayout

* delete MappedImageLayout

* use mem-mapping on Windows

* tweaks and touchups

* a few cleanups

* comments

* move EnsureLoaded into Assemby::Init

* A fix for IsDynamic() case.

* fix for preferred base, if used.

* disable failing scenario

* PR feedback

* Typo (CENTINEL --> SENTINEL)

* added a bug link to a disabled test scenario + couple comment tweaks
23 files changed:
src/coreclr/debug/daccess/request.cpp
src/coreclr/inc/pedecoder.h
src/coreclr/inc/pedecoder.inl
src/coreclr/inc/vptr_list.h
src/coreclr/pal/src/map/map.cpp
src/coreclr/tools/aot/ILCompiler.ReadyToRun/ObjectWriter/R2RPEBuilder.cs
src/coreclr/utilcode/pedecoder.cpp
src/coreclr/vm/assembly.cpp
src/coreclr/vm/assemblyname.cpp
src/coreclr/vm/assemblynative.cpp
src/coreclr/vm/domainfile.cpp
src/coreclr/vm/methodtablebuilder.cpp
src/coreclr/vm/nativeimage.cpp
src/coreclr/vm/peassembly.cpp
src/coreclr/vm/peassembly.h
src/coreclr/vm/peimage.cpp
src/coreclr/vm/peimage.h
src/coreclr/vm/peimage.inl
src/coreclr/vm/peimagelayout.cpp
src/coreclr/vm/peimagelayout.h
src/coreclr/vm/peimagelayout.inl
src/installer/managed/Microsoft.NET.HostModel/Bundle/TargetInfo.cs
src/tests/readytorun/crossgen2/Program.cs