Juneyoung Lee via llvm-dev
2020-Dec-19 21:25 UTC
[llvm-dev] Using poison constant as a don't-care value when emitting/optimizing vector operations
Hello all, Currently, undef is used as a don't-care value for vector operations, which causes hard problems. For example, a shufflevector sometimes cannot be optimized away ( https://bugs.llvm.org/show_bug.cgi?id=44185). The reason is that undef is not undefined enough. To avoid such problem, I'd like to suggest using poison constant for vector operations' placeholder instead. I made a patch that updates InstCombine's SimplifyDemandedVectorElts here, with a detailed description: https://reviews.llvm.org/D93586 Thanks, Juneyoung -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20201220/d8580425/attachment.html>
Nicolai Hähnle via llvm-dev
2020-Dec-22 06:11 UTC
[llvm-dev] Using poison constant as a don't-care value when emitting/optimizing vector operations
Thank you for doing this, it seems the right thing to me. Cheers, Nicolai On Sat, Dec 19, 2020 at 10:26 PM Juneyoung Lee via llvm-dev < llvm-dev at lists.llvm.org> wrote:> Hello all, > > Currently, undef is used as a don't-care value for vector operations, > which causes hard problems. > For example, a shufflevector sometimes cannot be optimized away ( > https://bugs.llvm.org/show_bug.cgi?id=44185). The reason is that undef is > not undefined enough. > > To avoid such problem, I'd like to suggest using poison constant for > vector operations' placeholder instead. > I made a patch that updates InstCombine's SimplifyDemandedVectorElts here, > with a detailed description: https://reviews.llvm.org/D93586 > > Thanks, > Juneyoung > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >-- Lerne, wie die Welt wirklich ist, aber vergiss niemals, wie sie sein sollte. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20201222/4dc3f6b5/attachment.html>