[PATCH] D101191: [InstCombine] Fully disable select to and/or i1 folding
Nikita Popov via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Mon May 3 14:05:55 PDT 2021
nikic added a comment.
Went through all the tests again, looks like there's three patterns that could still be handled. I think the last one of them should be handled, and for the other two it's fine to just open an issue.
================
Comment at: llvm/test/Transforms/InstCombine/and2.ll:51
-; CHECK-NEXT: [[TMP2:%.*]] = and i1 [[TMP1]], [[B:%.*]]
-; CHECK-NEXT: ret i1 [[TMP2]]
;
----------------
aqjune wrote:
> This one too
Looks like we still miss this one (https://alive2.llvm.org/ce/z/E_F768).
================
Comment at: llvm/test/Transforms/InstCombine/logical-select-inseltpoison.ll:450
+; CHECK-NEXT: [[AND3:%.*]] = select i1 [[OR]], i1 [[ADD]], i1 false
+; CHECK-NEXT: ret i1 [[AND3]]
;
----------------
Looks like this could be salvaged: https://alive2.llvm.org/ce/z/YQUQew
Doesn't seem important though.
================
Comment at: llvm/test/Transforms/InstCombine/or.ll:1102
+; CHECK-NEXT: [[AND:%.*]] = select i1 [[Y]], i1 [[X]], i1 false
+; CHECK-NEXT: [[OR:%.*]] = select i1 [[X_INV]], i1 true, i1 [[AND]]
; CHECK-NEXT: ret i1 [[OR]]
----------------
Can be salvaged: https://alive2.llvm.org/ce/z/-STJ2d
I thought this was already covered by one of the folds though...
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D101191/new/
https://reviews.llvm.org/D101191
More information about the cfe-commits
mailing list