[all-commits] [llvm/llvm-project] 3db974: [InstCombine] convert static function to internal ...

RotateRight via All-commits all-commits at lists.llvm.org
Tue Dec 14 08:21:08 PST 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 3db974facecbd0858bfc02ee076ad75da3271058
      https://github.com/llvm/llvm-project/commit/3db974facecbd0858bfc02ee076ad75da3271058
  Author: Sanjay Patel <spatel at rotateright.com>
  Date:   2021-12-14 (Tue, 14 Dec 2021)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
    M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp

  Log Message:
  -----------
  [InstCombine] convert static function to internal class function; NFC

The transform can require an optional shuffle instruction to be sound,
so we need to use Builder to create all values and then replace the
original instruction with whatever that final value is.


  Commit: d2be9ae0da2f440a0d42f928d33f5797e2a84500
      https://github.com/llvm/llvm-project/commit/d2be9ae0da2f440a0d42f928d33f5797e2a84500
  Author: Sanjay Patel <spatel at rotateright.com>
  Date:   2021-12-14 (Tue, 14 Dec 2021)

  Changed paths:
    M llvm/test/Transforms/InstCombine/shuffle_select-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/shuffle_select.ll

  Log Message:
  -----------
  [InstCombine] regenerate test checks; NFC


  Commit: bb2fc19c6355d990a4cfb94be20528fbe37950a8
      https://github.com/llvm/llvm-project/commit/bb2fc19c6355d990a4cfb94be20528fbe37950a8
  Author: Sanjay Patel <spatel at rotateright.com>
  Date:   2021-12-14 (Tue, 14 Dec 2021)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/test/Transforms/InstCombine/reuse-constant-from-select-in-icmp.ll

  Log Message:
  -----------
  [InstCombine] prevent infinite looping from opposing cmp and select transforms (PR52684)

As noted in the code comment, we might want to simply give up on this select
transform completely (given how many exceptions there are already and the
risk of future conflicts), but for now, carve out one more bailout to
avoid an infinite loop.

Fixes #52684:
https://github.com/llvm/llvm-project/issues/52684


Compare: https://github.com/llvm/llvm-project/compare/48d868493fa7...bb2fc19c6355


More information about the All-commits mailing list