[all-commits] [llvm/llvm-project] f492eb: [VPlan] Make VPInstruction::AnyOf poison-safe. (#1...

Florian Hahn via All-commits all-commits at lists.llvm.org
Mon Aug 25 10:55:44 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: f492eb9509dea311d4e5a5ebbebbf58eb2e7e877
      https://github.com/llvm/llvm-project/commit/f492eb9509dea311d4e5a5ebbebbf58eb2e7e877
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-08-25 (Mon, 25 Aug 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/fmax-without-fast-math-flags.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/fmin-without-fast-math-flags.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/simple_early_exit.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/single-early-exit-interleave.ll
    M llvm/test/Transforms/LoopVectorize/fmax-without-fast-math-flags-interleave.ll
    M llvm/test/Transforms/LoopVectorize/fmax-without-fast-math-flags.ll
    M llvm/test/Transforms/LoopVectorize/fmin-without-fast-math-flags.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-cond-poison.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-deref-assumptions.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave-hint.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave-only.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave.ll
    M llvm/test/Transforms/LoopVectorize/single_early_exit.ll
    M llvm/test/Transforms/LoopVectorize/single_early_exit_live_outs.ll
    M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination-early-exit.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/std-find.ll

  Log Message:
  -----------
  [VPlan] Make VPInstruction::AnyOf poison-safe. (#154156)

AnyOf reduces multiple input vectors to a single boolean value. When
used for early-exit vectorization, we need to consider any lane after
the early exit being poison. Any poison lane would result in poison
after the AnyOf reduction. To prevent this, freeze all inputs to AnyOf.

Fixes https://github.com/llvm/llvm-project/issues/153946.
Fixes https://github.com/llvm/llvm-project/issues/155162.

https://alive2.llvm.org/ce/z/FD-XxA

PR: https://github.com/llvm/llvm-project/pull/154156



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