[PATCH] D124183: [InstCombine] Add one use limitation for (X * C2) << C1 --> X * (C2 << C1)
Roman Lebedev via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Apr 21 09:44:42 PDT 2022
lebedev.ri added a comment.
This is not consistent with our general folding rules.
What does "may" mean? We'd trade sequential mul-shl for two independent mul.
Former would be sequential anyway, while two mul may or may not be sequential depending on how bad the microarchitecture is.
Is there an actual performance bugreport?
Does this regress e.g. the following case: https://godbolt.org/z/aWsvzW751 ?
What about the case where the backend isn't even meant to recover, like https://godbolt.org/z/4Tbb3YG3s ?
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D124183/new/
https://reviews.llvm.org/D124183
More information about the llvm-commits
mailing list