[all-commits] [llvm/llvm-project] c8ed78: [InstCombine] fold freeze of partial undef/poison ...

Sanjay Patel via All-commits all-commits at lists.llvm.org
Tue Apr 26 11:16:27 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: c8ed784ee69a7dbdf4b33e85229457ffad309cf2
      https://github.com/llvm/llvm-project/commit/c8ed784ee69a7dbdf4b33e85229457ffad309cf2
  Author: Sanjay Patel <spatel at rotateright.com>
  Date:   2022-04-26 (Tue, 26 Apr 2022)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/test/Transforms/InstCombine/freeze-phi.ll
    M llvm/test/Transforms/InstCombine/freeze.ll
    M llvm/test/Transforms/InstCombine/select.ll

  Log Message:
  -----------
  [InstCombine] fold freeze of partial undef/poison vector constants

We can always replace the undef elements in a vector constant
with regular constants to get rid of the freeze:
https://alive2.llvm.org/ce/z/nfRb4F

The select diffs show that we might do better by adjusting the
logic for a frozen select condition. We may also want to refine
the vector constant replacement to consider forming a splat.

Differential Revision: https://reviews.llvm.org/D123962




More information about the All-commits mailing list