R2RDump - Runtime function RVAs and method signatures (#17994)
authoracmyu <amycmyu@gmail.com>
Fri, 18 May 2018 01:58:24 +0000 (18:58 -0700)
committerZach Montoya <zamont@microsoft.com>
Fri, 18 May 2018 01:58:24 +0000 (18:58 -0700)
commit656432d8d73f0c13469abefb0d6abe556fc78e76
treece06b90b9d37d7dcb56b53f6da1cb090b31dae2e
parentcd6ae96f0b8c3d5268079f138c5e7134deb057f2
R2RDump - Runtime function RVAs and method signatures (#17994)

* R2RDump - Runtime function RVAs and sizes

* Change hard error to warning, GetInt64,32,16 helper functions

* Method signatures from metadata, GetUnsigned functions, arbitrary sections for GetOffset

* Use methodDefEntryPoints to match method metadata to native code, make runtime function endAddress conditional on machine type

* Get object arg and return types of method signature from TypeDef, use ReadUInt

* Iterate all rids, added NativeArray class

* Handle multiple runtime functions in a method, use ReadByte, make rid unsigned

* Use MethodDefinitionHandle(rid) instead of dictionary, make ReadByte signature similar to other Read methods

* Changes to getting runtime functions, increment the start index in ReadByte, added comments

* Use List for R2RMethods instead of array, fixed nits
src/tools/r2rdump/NativeArray.cs [new file with mode: 0644]
src/tools/r2rdump/R2RDump.cs
src/tools/r2rdump/R2RHeader.cs
src/tools/r2rdump/R2RMethod.cs [new file with mode: 0644]
src/tools/r2rdump/R2RReader.cs
src/tools/r2rdump/R2RSection.cs