[all-commits] [llvm/llvm-project] 1eab2d: [Attributor] Keep complex select and PHI instructi...

Johannes Doerfert via All-commits all-commits at lists.llvm.org
Wed Dec 7 22:59:10 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 1eab2d699e9581305f32473291e6afa47017d582
      https://github.com/llvm/llvm-project/commit/1eab2d699e9581305f32473291e6afa47017d582
  Author: Johannes Doerfert <johannes at jdoerfert.de>
  Date:   2022-12-07 (Wed, 07 Dec 2022)

  Changed paths:
    M llvm/include/llvm/Transforms/IPO/Attributor.h
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/test/Transforms/Attributor/nocapture-1.ll
    M llvm/test/Transforms/Attributor/returned.ll
    M llvm/test/Transforms/Attributor/value-simplify.ll
    M llvm/test/Transforms/Attributor/willreturn.ll

  Log Message:
  -----------
  [Attributor] Keep complex select and PHI instructions in AAPotentialValues

If a select or PHI instruction cannot be simplified to a single value it
is often beneficial to keep the value intact rather than looking at all
the operands. The reason is that various users require a single value
and consequently can deal with the select or PHI but not multiple
operands. Recursive calls of `Attributor::getAssumedSimplifiedValues`
will be required to take such select and PHI instructions apart.




More information about the All-commits mailing list