[all-commits] [llvm/llvm-project] dff822: Revert "[PowerPC] handle more than two predecessor...

Chen Zheng via All-commits all-commits at lists.llvm.org
Thu Dec 1 21:34:53 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: dff8227189b4b6008143a4dd28f50eaa269a55c8
      https://github.com/llvm/llvm-project/commit/dff8227189b4b6008143a4dd28f50eaa269a55c8
  Author: Chen Zheng <czhengsz at cn.ibm.com>
  Date:   2022-12-02 (Fri, 02 Dec 2022)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCCTRLoops.cpp
    R llvm/test/CodeGen/PowerPC/ctrloop-header-multiple-preds.mir

  Log Message:
  -----------
  Revert "[PowerPC] handle more than two predecessors loop header in ctrloop pass"

This reverts commit df9d60af1f9fa44f411b656bbc691d950c6fc087.

The CTRLoops pass is reordered to front of tail duplication pass in D138265.


  Commit: b61ff0ca76a50e6eb2b110084b690823b94ff77f
      https://github.com/llvm/llvm-project/commit/b61ff0ca76a50e6eb2b110084b690823b94ff77f
  Author: Chen Zheng <czhengsz at cn.ibm.com>
  Date:   2022-12-02 (Fri, 02 Dec 2022)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
    M llvm/test/CodeGen/PowerPC/O3-pipeline.ll

  Log Message:
  -----------
  [PowerPC] move ctrloop pass before tail duplication

Tail duplication may modify the loop to a "non-canonical" form
that CTR Loop pass can not recognize. We fixed one issue in D135846.
And we found in some other case, the loop is changed to irreducible form.
It is hard to fix this case in CTR loop pass, instead we reorder the
CTR loop pass before tail duplication pass and just after finalize-isel
pass to avoid any unexpected change to the loop form.

Reviewed By: lkail

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


Compare: https://github.com/llvm/llvm-project/compare/8ab388e15852...b61ff0ca76a5


More information about the All-commits mailing list