Skip to content

Commit

Permalink
Restore StubSecretArg from stack
Browse files Browse the repository at this point in the history
Issue #100301

Co-authored-by: Jakob Botsch Nielsen <[email protected]>
  • Loading branch information
t-mustafin and jakobbotsch committed Mar 30, 2024
1 parent d7c4f02 commit 232ee6f
Showing 1 changed file with 11 additions and 2 deletions.
13 changes: 11 additions & 2 deletions src/coreclr/jit/lower.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -5610,8 +5610,17 @@ void Lowering::InsertPInvokeMethodProlog()
call->gtArgs.PushBack(comp, frameAddrArg);
// for x86/arm32 don't pass the secretArg.
#if !defined(TARGET_X86) && !defined(TARGET_ARM)
NewCallArg stubParamArg =
NewCallArg::Primitive(PhysReg(REG_SECRET_STUB_PARAM)).WellKnown(WellKnownArg::SecretStubParam);
NewCallArg stubParamArg;

if (comp->lvaStubArgumentVar == BAD_VAR_NUM)
{
stubParamArg = NewCallArg::Primitive(PhysReg(REG_SECRET_STUB_PARAM)).WellKnown(WellKnownArg::SecretStubParam);
}
else
{
stubParamArg = NewCallArg::Primitive(comp->gtNewLclvNode(comp->lvaStubArgumentVar, TYP_I_IMPL))
.WellKnown(WellKnownArg::SecretStubParam);
}
call->gtArgs.PushBack(comp, stubParamArg);
#endif

Expand Down

0 comments on commit 232ee6f

Please sign in to comment.