[all-commits] [llvm/llvm-project] 8ca569: [PowerPC] Fix infinite loop in peephole CR optimiz...

Nikita Popov via All-commits all-commits at lists.llvm.org
Mon Mar 29 16:45:08 PDT 2021


  Branch: refs/heads/release/12.x
  Home:   https://github.com/llvm/llvm-project
  Commit: 8ca56905dd9bdade269b5bc91528495884b62bf5
      https://github.com/llvm/llvm-project/commit/8ca56905dd9bdade269b5bc91528495884b62bf5
  Author: Nikita Popov <nikita.ppv at gmail.com>
  Date:   2021-03-29 (Mon, 29 Mar 2021)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp
    A llvm/test/CodeGen/PowerPC/pr49509.ll

  Log Message:
  -----------
  [PowerPC] Fix infinite loop in peephole CR optimization (PR49509)

If we encounter a degenerate select node where both operands are
the same, then we can continue negating the condition while swapping
operands, resulting in an infinite loop. Avoid this by bailing out
if both operands are the same.

Fixes https://bugs.llvm.org/show_bug.cgi?id=49509.

Differential Revision: https://reviews.llvm.org/D98340

(cherry picked from commit 2489cbaa8057c736475fd88990f4f6dbf022873d)




More information about the All-commits mailing list