FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

Ignore modopts/modreqs for `UnsafeAccessor` field targets by AaronRobinsonMSFT · Pull Request #109694 · dotnet/runtime · GitHub

Repository navigation

Ignore modopts/modreqs for UnsafeAccessor field targets - #109694

Merged
AaronRobinsonMSFT merged 2 commits into
dotnet:mainfrom
AaronRobinsonMSFT:ignore_modopts_modreqs_field_lookup
Nov 11, 2024
Merged

AaronRobinsonMSFT merged 2 commits into
dotnet:mainfrom
AaronRobinsonMSFT:ignore_modopts_modreqs_field_lookup

Conversation

AaronRobinsonMSFT commented Nov 11, 2024 •
edited
Loading

Copy link
Copy Markdown
Member

Fixes #109665

The generated IL remains correct and doesn't require a .volatile prefix for the accessor. This is based off of what Roslyn currently emits if an accessor was manually written.

See SharpLab for an example.

The generated IL remains correct and doesn't
require a .volatile prefix for the generated accessor.
This is based off of what Roslyn currently emits if a
getter was available.

Copy link
Copy Markdown
Member Author

This might require an update to mono as well. I will look into that tomorrow.

Copy link
Copy Markdown
Member Author

/ba-g WASM timeouts

AaronRobinsonMSFT merged commit e6e3bb6 into dotnet:main Nov 11, 2024
AaronRobinsonMSFT deleted the ignore_modopts_modreqs_field_lookup branch November 11, 2024 21:08

Copy link
Copy Markdown
Member Author

/backport to release/9.0

Copy link
Copy Markdown
Contributor

Started backporting to release/9.0: https://github.com/dotnet/runtime/actions/runs/11786200251

Copy link
Copy Markdown
Member Author

/backport to release/8.0-staging

Copy link
Copy Markdown
Contributor

Started backporting to release/8.0-staging: https://github.com/dotnet/runtime/actions/runs/11786212482

Copy link
Copy Markdown
Contributor

@AaronRobinsonMSFT backporting to release/8.0-staging failed, the patch most likely resulted in conflicts:

$ git am --3way --empty=keep --ignore-whitespace --keep-non-patch changes.patch

Applying: Ignore modopts/modreqs for `UnsafeAccessor` field targets
Using index info to reconstruct a base tree...
M	src/coreclr/vm/prestub.cpp
M	src/tests/baseservices/compilerservices/UnsafeAccessors/UnsafeAccessorsTests.cs
Falling back to patching base and 3-way merge...
Auto-merging src/tests/baseservices/compilerservices/UnsafeAccessors/UnsafeAccessorsTests.cs
CONFLICT (content): Merge conflict in src/tests/baseservices/compilerservices/UnsafeAccessors/UnsafeAccessorsTests.cs
Auto-merging src/coreclr/vm/prestub.cpp
CONFLICT (content): Merge conflict in src/coreclr/vm/prestub.cpp
error: Failed to merge in the changes.
hint: Use 'git am --show-current-patch=diff' to see the failed patch
hint: When you have resolved this problem, run "git am --continue".
hint: If you prefer to skip this patch, run "git am --skip" instead.
hint: To restore the original branch and stop patching, run "git am --abort".
hint: Disable this message with "git config advice.mergeConflict false"
Patch failed at 0001 Ignore modopts/modreqs for `UnsafeAccessor` field targets
Error: The process '/usr/bin/git' failed with exit code 128

Please backport manually!

Copy link
Copy Markdown
Contributor

@AaronRobinsonMSFT an error occurred while backporting to release/8.0-staging, please check the run log for details!

Error: git am failed, most likely due to a merge conflict.

Copy link
Copy Markdown
Member Author

/backport to release/9.0-staging

Copy link
Copy Markdown
Contributor

Started backporting to release/9.0-staging: https://github.com/dotnet/runtime/actions/runs/11786290011

mikelle-rogers pushed a commit to mikelle-rogers/runtime that referenced this pull request Dec 10, 2024
)

* Ignore modopts/modreqs for `UnsafeAccessor` field targets

The generated IL remains correct and doesn't require a
.volatile prefix for the accessor. This is based off of what Roslyn
currently emits if an accessor was manually written.
github-actions Bot locked and limited conversation to collaborators Dec 12, 2024
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
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.

UnsafeAccessorAttribute fails to access volatile field

4 participants


Back | FazBrowse Home | New Git URL