[InstCombine] fold sdiv with hidden common factor
authorSanjay Patel <spatel@rotateright.com>
Thu, 6 Oct 2022 16:31:42 +0000 (12:31 -0400)
committerSanjay Patel <spatel@rotateright.com>
Thu, 6 Oct 2022 17:11:50 +0000 (13:11 -0400)
commit8da2fa856f1b7ddd079e7b0637082f1413d97ea2
treeb2260e7cafa546b5ed61f0b192df95c7cecf163c
parent241893f99fd2cfe2fb7e34dfbe34f24af81532b5
[InstCombine] fold sdiv with hidden common factor

(X * Y) s/ (X << Z) --> Y s/ (1 << Z)

https://alive2.llvm.org/ce/z/yRSddG

issue #58137
llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
llvm/test/Transforms/InstCombine/div-shift.ll
llvm/test/Transforms/PhaseOrdering/reassociate-instcombine.ll