Skip to content

Add explicit null-check for tailcalls to VSD - #62719

Merged
jkotas merged 2 commits into
dotnet:mainfrom
jakobbotsch:fix-61486
Dec 14, 2021
Merged

Add explicit null-check for tailcalls to VSD#62719
jkotas merged 2 commits into
dotnet:mainfrom
jakobbotsch:fix-61486

Conversation

@jakobbotsch

@jakobbotschjakobbotsch commented Dec 13, 2021

Copy link
Copy Markdown
Member

There is already a comment that this is necessary, but it is only being
done for x86 tailcalls via jit helper. Do it for normal tailcalls to VSD
as well.

Fix#61486

@ghostghost added the area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI label Dec 13, 2021
@ghost

Copy link
Copy Markdown

Tagging subscribers to this area: @JulieLeeMSFT
See info in area-owners.md if you want to be subscribed.

Issue Details

There is already a comment that this is necessary, but it is only being
done for x86 tailcalls via jit helper. Do it for normal tailcalls to VSD
as well.

Author:jakobbotsch
Assignees:-
Labels:

area-CodeGen-coreclr

Milestone:-

There is already a comment that this is necessary, but it is only being
done for x86 tailcalls via jit helper. Do it for normal tailcalls to VSD
as well.
Fixdotnet#61486
@jakobbotsch

Copy link
Copy Markdown
MemberAuthor

/azp run runtime-coreclr jitstress, runtime-coreclr outerloop

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 2 pipeline(s).

@jakobbotsch

Copy link
Copy Markdown
MemberAuthor

For ARM64 this adds 4 bytes to every VSD tail call while on x64 it adds 2 bytes. Diffs showing the size increase.

@jakobbotsch

Copy link
Copy Markdown
MemberAuthor

cc @dotnet/jit-contrib @janvorli@jkotas

@k15tfu

Copy link
Copy Markdown
Contributor

Hi! Do you plan to back port this fix to 6.0?

@jakobbotsch

Copy link
Copy Markdown
MemberAuthor

@k15tfu Yes, I think this is a good candidate for backporting.

@jakobbotsch

Copy link
Copy Markdown
MemberAuthor

/backport to release/6.0

@github-actions

Copy link
Copy Markdown
Contributor

Started backporting to release/6.0: https://github.com/dotnet/runtime/actions/runs/1577668274

@ghostghost locked as resolved and limited conversation to collaborators Jan 13, 2022
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

area-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Access Violation through reflection not caught as NRE on .NET 6

4 participants

@jakobbotsch@k15tfu@EgorBo@jkotas