Non virtual calls to instance methods non-virtual dispatch on instance interface...
authorDavid Wrighton <davidwr@microsoft.com>
Tue, 12 Nov 2019 00:30:58 +0000 (16:30 -0800)
committerGitHub <noreply@github.com>
Tue, 12 Nov 2019 00:30:58 +0000 (16:30 -0800)
commit949f6d677631aaa783c74f70a479beb9bc625638
tree5ab1e1f83a7492d01616973c845410fadeb37977
parent2e9ddf59f5764c0544c40517238aa636a4df0aed
Non virtual calls to instance methods non-virtual dispatch on instance interface methods (dotnet/coreclr#27756)

* est for non_virtual_calls_to_instance_methods
* Fix handling of callvirt to instance methods on interface types that are not virtual
- Use call type to indicate if its non-virtual or not, instead of opcode
* Use ilproj to protect against future C# compiler changes
- This test needs to test the use of specific opcodes, and so an IL proj is required

Commit migrated from https://github.com/dotnet/coreclr/commit/638f59b8bd99af456d21c6a4b64da88025d2ff7d
src/coreclr/src/vm/jitinterface.cpp
src/coreclr/tests/src/Loader/classloader/DefaultInterfaceMethods/sharedgenerics/non_virtual_calls_to_instance_methods.cs [new file with mode: 0644]
src/coreclr/tests/src/Loader/classloader/DefaultInterfaceMethods/sharedgenerics/non_virtual_calls_to_instance_methods.il [new file with mode: 0644]
src/coreclr/tests/src/Loader/classloader/DefaultInterfaceMethods/sharedgenerics/non_virtual_calls_to_instance_methods.ilproj [new file with mode: 0644]