Add new Unmanaged MD calling convention value (#38357)
authorAaron Robinson <arobins@microsoft.com>
Thu, 2 Jul 2020 23:44:39 +0000 (16:44 -0700)
committerGitHub <noreply@github.com>
Thu, 2 Jul 2020 23:44:39 +0000 (16:44 -0700)
commitaffc43dad5b7d6539c12ede0624d31cdeb048838
treebe1f729f7b82832d41605f5b5d58720786204f65
parent74b173787bad85eac022b9fb680f247aeda76305
Add new Unmanaged MD calling convention value (#38357)

* Respect new MD bit in runtime

* Throw "not implemented".

* Update parser for ILAsm
Add text based grammar file for IL tooling

* Update ILDasm

* Add disabled test project for function pointers.

* Add feature detection.
30 files changed:
src/coreclr/src/System.Private.CoreLib/src/System/Reflection/MdImport.cs
src/coreclr/src/System.Private.CoreLib/src/System/RuntimeHandles.cs
src/coreclr/src/debug/daccess/nidump.cpp
src/coreclr/src/ilasm/asmparse.y
src/coreclr/src/ilasm/prebuilt/asmparse.cpp
src/coreclr/src/ilasm/prebuilt/asmparse.grammar [new file with mode: 0644]
src/coreclr/src/ildasm/dasm.cpp
src/coreclr/src/inc/corhdr.h
src/coreclr/src/inc/corinfo.h
src/coreclr/src/inc/formattype.cpp
src/coreclr/src/tools/Common/JitInterface/CorInfoImpl.cs
src/coreclr/src/tools/Common/JitInterface/CorInfoTypes.cs
src/coreclr/src/tools/Common/TypeSystem/Common/MethodDesc.cs
src/coreclr/src/tools/Common/TypeSystem/Ecma/EcmaSignatureParser.cs
src/coreclr/src/tools/dotnet-pgo/TypeSystemMetadataEmitter.cs
src/coreclr/src/vm/dllimport.cpp
src/coreclr/src/vm/interpreter.cpp
src/coreclr/src/vm/jitinterface.cpp
src/coreclr/tests/src/baseservices/callconvs/CMakeLists.txt [new file with mode: 0644]
src/coreclr/tests/src/baseservices/callconvs/CallFunctionPointers.il [new file with mode: 0644]
src/coreclr/tests/src/baseservices/callconvs/CallFunctionPointers.ilproj [new file with mode: 0644]
src/coreclr/tests/src/baseservices/callconvs/NativeFunctions.cpp [new file with mode: 0644]
src/coreclr/tests/src/baseservices/callconvs/TestCallingConventions.cs [new file with mode: 0644]
src/coreclr/tests/src/baseservices/callconvs/TestCallingConventions.csproj [new file with mode: 0644]
src/libraries/System.Private.CoreLib/src/System/Runtime/CompilerServices/RuntimeFeature.cs
src/libraries/System.Reflection.Metadata/ref/System.Reflection.Metadata.cs
src/libraries/System.Reflection.Metadata/src/System/Reflection/Metadata/Signatures/SignatureCallingConvention.cs
src/libraries/System.Reflection.Metadata/src/System/Reflection/Metadata/Signatures/SignatureHeader.cs
src/libraries/System.Reflection.Metadata/tests/Metadata/Decoding/MethodSignatureTests.cs
src/libraries/System.Runtime/ref/System.Runtime.cs