[all-commits] [llvm/llvm-project] 2e5776: [VPlan] Simplify select !c, x, y -> select c, y, x...

Luke Lau via All-commits all-commits at lists.llvm.org
Tue Jul 8 00:56:26 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 2e5776130b1da8d2d553b62a87c6bf6ace07e2f8
      https://github.com/llvm/llvm-project/commit/2e5776130b1da8d2d553b62a87c6bf6ace07e2f8
  Author: Luke Lau <luke at igalia.com>
  Date:   2025-07-08 (Tue, 08 Jul 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    A llvm/test/Transforms/LoopVectorize/select-neg-cond.ll

  Log Message:
  -----------
  [VPlan] Simplify select !c, x, y -> select c, y, x (#147268)

This is split off from #133993

On its own this simplification isn't that useful, but it allows us to
make the equivalent VPBlendRecipe optimisation more generic by operating
on VPInstructions.

In order to actually test this without #133993, I've had to also extend
the m_Not pattern matcher to also catch VPWidenRecipes, since I couldn't
really think of a straightforward way to create a VPInstruction::Select
with a negated condition.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list