[all-commits] [llvm/llvm-project] f68647: [GlobalISel] Adding support for handling G_ASSERT_...
Dávid Ferenc Szabó via All-commits
all-commits at lists.llvm.org
Thu Jan 4 19:13:52 PST 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: f68647997b828eeaa580e74e1d7c8565a9ecd215
https://github.com/llvm/llvm-project/commit/f68647997b828eeaa580e74e1d7c8565a9ecd215
Author: Dávid Ferenc Szabó <30732159+dfszabo at users.noreply.github.com>
Date: 2024-01-05 (Fri, 05 Jan 2024)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/LegalizationArtifactCombiner.h
M llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-hoisted-constants.ll
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-simple.mir
Log Message:
-----------
[GlobalISel] Adding support for handling G_ASSERT_{SEXT,ZEXT,ALIGN} i… (#74196)
…n artifact combiner
These instructions are hint for optimizations and can be treated as
copies and are handled as such with this change. Without it is possible
to run into an assertion, since tryCombineUnmergeValues rightfully use
getDefIgnoringCopies to get the source MI, which already handle these
hint instructions and treat them as copies. The problem is that
markDefDead only considers COPYs, which will lead to crash with
assertion for cases like testUnmergeHintOfTrunc.
More information about the All-commits
mailing list