[PATCH] D99674: [InstCombine] Conditionally fold select i1 into and/or

Nikita Popov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Mar 31 11:20:11 PDT 2021


nikic added a comment.

> Unconditionally disabling this transformation affects later pipelines that depend on and/or i1s.
> To minimize its impact, this patch conservatively checks whether cond2 is an instruction that
> creates a poison or its operand creates a poison.

Do you have any further information on the regressions this would result in?

Given all the preliminary work that has gone into this, I'd really like to have the option flipped outright, and not introduce another hack.



================
Comment at: llvm/test/Transforms/InstCombine/pr49668.ll:1
+; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
+; RUN: opt < %s -instcombine -S | FileCheck %s
----------------
Wrong filename? https://bugs.llvm.org/show_bug.cgi?id=49668 does not look related.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D99674/new/

https://reviews.llvm.org/D99674



More information about the llvm-commits mailing list