[all-commits] [llvm/llvm-project] 3f0455: [ValueTracking] Use SmallVector for non-undef/pois...

Nikita Popov via All-commits all-commits at lists.llvm.org
Mon Jan 2 05:40:30 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 3f04553e5c16f5ba57e9a82edc190770f5a062bb
      https://github.com/llvm/llvm-project/commit/3f04553e5c16f5ba57e9a82edc190770f5a062bb
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2023-01-02 (Mon, 02 Jan 2023)

  Changed paths:
    M llvm/include/llvm/Analysis/ValueTracking.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Transforms/Instrumentation/PoisonChecking.cpp

  Log Message:
  -----------
  [ValueTracking] Use SmallVector for non-undef/poison ops

The way these APIs are used, there isn't really a benefit to
deduplicating the ops as part of the API. The only place that
benefits from this is PoisonChecking, and for that particular
use the assertion emission was potentially non-deterministic.
We should populate a vector for deterministic order and then
deduplicate via a separate set.




More information about the All-commits mailing list