summaryrefslogtreecommitdiff
path: root/src/vm/jitinterface.h
diff options
context:
space:
mode:
authorMichal Strehovský <MichalStrehovsky@users.noreply.github.com>2018-10-05 12:51:06 +0200
committerGitHub <noreply@github.com>2018-10-05 12:51:06 +0200
commit27c848e37e9998142b60e776cf5b5d08a3543fe1 (patch)
tree0ed46884f7e98a2251e124b3ea3f9aada3b6f4b0 /src/vm/jitinterface.h
parentaf0c1f287d31ca3a641151df60baa7371635f508 (diff)
downloadcoreclr-27c848e37e9998142b60e776cf5b5d08a3543fe1.tar.gz
coreclr-27c848e37e9998142b60e776cf5b5d08a3543fe1.tar.bz2
coreclr-27c848e37e9998142b60e776cf5b5d08a3543fe1.zip
Report instantiation argument in non-virtual interface calls (#20257)
The existing code would incorrectly inhibit codegen from generating instantiation argument in non-virtual calls to default interface methods (i.e. those that can happen with the `base` syntax in C#). Fixes #16775.
Diffstat (limited to 'src/vm/jitinterface.h')
-rw-r--r--src/vm/jitinterface.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/vm/jitinterface.h b/src/vm/jitinterface.h
index c609237f30..a4f6576cdf 100644
--- a/src/vm/jitinterface.h
+++ b/src/vm/jitinterface.h
@@ -30,6 +30,13 @@ enum StompWriteBarrierCompletionAction
SWB_EE_RESTART = 0x2
};
+enum SignatureKind
+{
+ SK_NOT_CALLSITE,
+ SK_CALLSITE,
+ SK_VIRTUAL_CALLSITE,
+};
+
class Stub;
class MethodDesc;
class FieldDesc;
@@ -745,7 +752,7 @@ public:
CORINFO_METHOD_HANDLE ftnHnd,
CORINFO_SIG_INFO* sigInfo,
CORINFO_CLASS_HANDLE owner = NULL,
- BOOL isCallSite = FALSE
+ SignatureKind signatureKind = SK_NOT_CALLSITE
);
void getEHinfo(