-
Notifications
You must be signed in to change notification settings - Fork 12.4k
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
GVN hoists loads over intrinsics #54851
Labels
Comments
@efriedma-quic @arsenm Any thoughts? |
jdoerfert
changed the title
GVN hoists loads over unknown intrinsics
GVN hoists loads over intrinsics
Apr 11, 2022
Is this distinct from https://reviews.llvm.org/D115302 ? |
I think it is. Or at least the fix I'm preparing is. I think the reason for this problem is d4133ac which survived one way or another until today. |
Proposed fix: https://reviews.llvm.org/D123531 |
mem-frob
pushed a commit
to draperlaboratory/hope-llvm-project
that referenced
this issue
Oct 7, 2022
This is a long standing problem that resurfaces once in a while [0]. There might actually be two problems because I'm not 100% sure if the issue underlying https://reviews.llvm.org/D115302 would be solved by this or not. Anyway. In 2008 we thought intrinsics do not read/write globals passed to them: llvm/llvm-project@d4133ac This is not correct given that intrinsics can synchronize threads and cause effects to effectively become visible. NOTE: I did not yet modify any tests but only tried out the reproducer of llvm/llvm-project#54851. Fixes: llvm/llvm-project#54851 [0] https://discourse.llvm.org/t/bug-gvn-memdep-bug-in-the-presence-of-intrinsics/59402 Differential Revision: https://reviews.llvm.org/D123531
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Originally reported here: https://discourse.llvm.org/t/bug-gvn-memdep-bug-in-the-presence-of-intrinsics/59402
The simple reproducer can be found here: https://godbolt.org/z/cKMEezbjY
Compiled with
-globals-aa -gvn
the below code will hoist the load above the barrier but not the unknown function.The text was updated successfully, but these errors were encountered: