[PATCH] D106352: [InstCombine] Fold (select C, (gep (gep Ptr, Idx0), Idx1), (gep Ptr, Idx0)) -> (gep Ptr, (select C, Idx0+Idx1, Idx0)) (PR51069)

Roman Lebedev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jul 20 04:26:15 PDT 2021


lebedev.ri added a comment.

I feel like `gep (gep Ptr, Idx0), Idx1  --> gep Ptr, Idx0+Idx1` is obviously a standalone fold that should be elsewhere in instcombine.



================
Comment at: llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp:2950-2953
+    // Fold (select C, (gep (gep Ptr, Idx0), Idx1), (gep Ptr, Idx0))
+    //  --> (gep Ptr,(select C, Idx0+Idx1, Idx0))
+    // Fold (select C, (gep Ptr, Idx0), (gep (gep Ptr, Idx0), Idx1))
+    //  --> (gep Ptr,(select C, Idx0, Idx0+Idx1))
----------------



Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D106352



More information about the llvm-commits mailing list