Skip to content
This repository was archived by the owner on Jan 23, 2023. It is now read-only.

Conversation

@sandreenko
Copy link

@sandreenko sandreenko commented Feb 2, 2018

ARM R2R calls that are indirected through a relative address are dispatched as VSD using virtualStubParamInfo->GetReg() for indirection cell address, which ZapIndirectHelperThunk expects.

For VSD we add this argument in morph, do the same for this case.

So this PR:

  1. adds an additional explicit argument for call->IsR2RRelativeIndir() on ARM
  2. deletes requirement cellAddr->gtRegNum = REG_R2R_INDIRECT_PARAM;
  3. hacks fgValueNumberHelperCallFunc to accept the R2R arm helpers with non-standard number of arguments.

Fix #16589.

@sandreenko sandreenko closed this Feb 16, 2018
@sandreenko sandreenko reopened this Mar 5, 2018
@sandreenko sandreenko changed the title [WIP][R2R][RyuJit][ARM] Fix R2R relative indirection for arm. [R2R][RyuJit][ARM] Fix R2R relative indirection for arm. Mar 7, 2018
@sandreenko sandreenko requested a review from BruceForstall March 7, 2018 19:59
@sandreenko
Copy link
Author

PTAL @dotnet/jit-contrib

@sandreenko
Copy link
Author

@dotnet-bot retest this please

@sandreenko
Copy link
Author

@dotnet-bot test Windows_NT arm Cross Checked r2r Build and Test
@dotnet-bot test Windows_NT arm Cross Checked r2r_jitminopts Build and Test
@dotnet-bot test Windows_NT arm Cross Checked r2r_jitstress1 Build and Test
@dotnet-bot test Windows_NT arm Cross Checked r2r_jitstress2 Build and Test

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants