Skip to content

JIT: Fix unrecognized unaligned field indirections on ARM32 - #75078

Merged
jakobbotsch merged 1 commit into
dotnet:mainfrom
jakobbotsch:fix-74260
Sep 8, 2022
Merged

JIT: Fix unrecognized unaligned field indirections on ARM32#75078
jakobbotsch merged 1 commit into
dotnet:mainfrom
jakobbotsch:fix-74260

Conversation

@jakobbotsch

Copy link
Copy Markdown
Member

For large field offsets we need to insert explicit null checks. This was
breaking recognition of unaligned accesses that needs special treatment
for floating point instructions.

Fix#74260

For large field offsets we need to insert explicit null checks. This was
breaking recognition of unaligned accesses that needs special treatment
for floating point instructions.
Fixdotnet#74260
@ghostghost added the area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI label Sep 5, 2022
@ghostghost assigned jakobbotschSep 5, 2022
@ghost

ghost commented Sep 5, 2022

Copy link
Copy Markdown

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

Issue Details

For large field offsets we need to insert explicit null checks. This was
breaking recognition of unaligned accesses that needs special treatment
for floating point instructions.

Fix #74260

Author:jakobbotsch
Assignees:-
Labels:

area-CodeGen-coreclr

Milestone:-

@jakobbotschjakobbotsch added this to the 7.0.0 milestone Sep 5, 2022
@JulieLeeMSFT

Copy link
Copy Markdown
Member

@jakobbotsch, once completing this, please backport this to 7.0.

@jakobbotsch

Copy link
Copy Markdown
MemberAuthor

cc @dotnet/jit-contrib PTAL @BruceForstall

internal struct FloatNonAlignedFieldWithLargeOffset
{
[FieldOffset(1021)]
[FieldOffset(0x10001)]

Copy link
Copy Markdown
MemberAuthor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is just making the field offset large enough for the problem to happen even without stress.

@jakobbotsch
jakobbotsch merged commit 1962b50 into dotnet:mainSep 8, 2022
@jakobbotsch
jakobbotsch deleted the fix-74260 branch September 8, 2022 08:56
@jakobbotsch

Copy link
Copy Markdown
MemberAuthor

/backport to release/7.0

@github-actions

Copy link
Copy Markdown
Contributor

Started backporting to release/7.0: https://github.com/dotnet/runtime/actions/runs/3013766751

@ghostghost locked as resolved and limited conversation to collaborators Oct 8, 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.

Test failure: JIT/Regression/JitBlue/Runtime_34170/Runtime_34170/Runtime_34170.sh

3 participants

@jakobbotsch@JulieLeeMSFT@BruceForstall