forked from llvm/llvm-project
-
-
Notifications
You must be signed in to change notification settings - Fork 9
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
AArch64 GIsel: legalize lshr operands, even if it is poison
Previously, this caused GlobalISel to emit invalid IR (a gpr32 to gpr64 copy) and fail during verification. While this shift is not defined (returns poison), it should not crash codegen, as it may appear inside dead code (for example, a select instruction), and it is legal IR input, as long as the value is unused. Discovered while trying to build Julia with LLVM v13: JuliaLang/julia#42602. Reviewed By: aemerson Differential Revision: https://reviews.llvm.org/D114389 (cherry picked from commit 18308e1)
- Loading branch information
Showing
3 changed files
with
92 additions
and
29 deletions.
There are no files selected for viewing
This file contains 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
This file contains 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
This file contains 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