[all-commits] [llvm/llvm-project] 6409c2: [SCEVExpander] Use PoisoningVH for OrigFlags

Nikita Popov via All-commits all-commits at lists.llvm.org
Tue Mar 5 07:42:12 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 6409c21857373bbb5563b37c3bacc066ad633658
      https://github.com/llvm/llvm-project/commit/6409c21857373bbb5563b37c3bacc066ad633658
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/ScalarEvolutionExpander.h
    A llvm/test/Transforms/LoopStrengthReduce/X86/pr83404.ll

  Log Message:
  -----------
  [SCEVExpander] Use PoisoningVH for OrigFlags

It's common to delete some instructions after using SCEVExpander,
while it is still live (but will not be used afterwards). In that
case, the AssertingVH may trigger. Replace it with a PoisoningVH
so that we only detect the case where the SCEVExpander actually is
used in a problematic fashion after the instruction removal.

The alternative would be to add clear() calls to more code paths.

Fixes https://github.com/llvm/llvm-project/issues/83404.



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