Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[MachineLICM] Don't allow hoisting invariant loads across mem barrier… #9798

Open
wants to merge 1 commit into
base: stable/20240723
Choose a base branch
from

Conversation

fhahn
Copy link

@fhahn fhahn commented Jan 6, 2025

…. (llvm#116987)

The improvements in 63917e1 / llvm#70796 do not check for memory barriers/unmodelled sideeffects, which means we may incorrectly hoist loads across memory barriers.

Fix this by checking any machine instruction in the loop is a load-fold barrier.

PR: llvm#116987 (cherry picked from commit ef102b4)

llvm#116987)

The improvements in 63917e1 / llvm#70796 do not check for memory
barriers/unmodelled sideeffects, which means we may incorrectly hoist
loads across memory barriers.

Fix this by checking any machine instruction in the loop is a load-fold
barrier.

PR: llvm#116987
(cherry picked from commit ef102b4)
@fhahn fhahn requested a review from a team as a code owner January 6, 2025 13:53
@fhahn
Copy link
Author

fhahn commented Jan 6, 2025

@swift-ci please test

@fhahn
Copy link
Author

fhahn commented Jan 6, 2025

@swift-ci please test llvm

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant