[all-commits] [llvm/llvm-project] 4275da: [ValueTracking] Add isGuaranteedNotToBeUndef() var...

Nikita Popov via All-commits all-commits at lists.llvm.org
Mon Dec 4 03:04:58 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 4275da2278b146189268b1040b749fa9f3a7bdcc
      https://github.com/llvm/llvm-project/commit/4275da2278b146189268b1040b749fa9f3a7bdcc
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2023-12-04 (Mon, 04 Dec 2023)

  Changed paths:
    M llvm/include/llvm/Analysis/ValueTracking.h
    M llvm/lib/Analysis/LazyValueInfo.cpp
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp

  Log Message:
  -----------
  [ValueTracking] Add isGuaranteedNotToBeUndef() variant (NFC)

We have a bunch of places where we have to guard against undef
to avoid multi-use issues, but would be fine with poison. Use a
different function for these to make it clear, and to indicate that
this check can be removed once we no longer support undef. I've
replaced some of the obvious cases, but there's probably more.

For now, the implementation is the same as UndefOrPoison, it just
has a more precise name.




More information about the All-commits mailing list