[all-commits] [llvm/llvm-project] 48379f: [NFC][SimplifyCFG] Add more negative tests for pro...

Roman Lebedev via All-commits all-commits at lists.llvm.org
Sun Jul 25 17:01:33 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 48379f27d044780396a36f90972da43e2d5aceda
      https://github.com/llvm/llvm-project/commit/48379f27d044780396a36f90972da43e2d5aceda
  Author: Roman Lebedev <lebedev.ri at gmail.com>
  Date:   2021-07-26 (Mon, 26 Jul 2021)

  Changed paths:
    M llvm/test/Transforms/SimplifyCFG/fold-two-entry-phi-node-with-one-block-profmd.ll
    M llvm/test/Transforms/SimplifyCFG/fold-two-entry-phi-node-with-two-blocks-profmd.ll
    M llvm/test/Transforms/SimplifyCFG/preserve-branchweights.ll
    M llvm/test/Transforms/SimplifyCFG/speculatively-execute-block-profmd.ll

  Log Message:
  -----------
  [NFC][SimplifyCFG] Add more negative tests for profmd-induced speculation avoidance


  Commit: e58ce35f7b672b87baf8402de286b13df6082a00
      https://github.com/llvm/llvm-project/commit/e58ce35f7b672b87baf8402de286b13df6082a00
  Author: Roman Lebedev <lebedev.ri at gmail.com>
  Date:   2021-07-26 (Mon, 26 Jul 2021)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/test/Transforms/SimplifyCFG/speculatively-execute-block-profmd.ll

  Log Message:
  -----------
  [SimplifyCFG] Don't speculatively execute BB if it's predictably not taken

If the branch isn't `unpredictable`, and it is predicted to *not* branch
to the block we are considering speculatively executing,
then it seems counter-productive to execute the code that is predicted not to be executed.

Reviewed By: spatel

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


  Commit: 59a5964e033c92f3b4866429552f20979c998e56
      https://github.com/llvm/llvm-project/commit/59a5964e033c92f3b4866429552f20979c998e56
  Author: Roman Lebedev <lebedev.ri at gmail.com>
  Date:   2021-07-26 (Mon, 26 Jul 2021)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/test/Transforms/PGOProfile/chr.ll
    M llvm/test/Transforms/SimplifyCFG/fold-two-entry-phi-node-with-one-block-profmd.ll
    M llvm/test/Transforms/SimplifyCFG/fold-two-entry-phi-node-with-two-blocks-profmd.ll

  Log Message:
  -----------
  [SimplifyCFG] Don't speculatively execute BB[s] if they are predictably not taken

Same as D106650, but for `FoldTwoEntryPHINode()`

Reviewed By: spatel

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


  Commit: c2dacb1cd3cc35213bb278f0746ef42a05e68e70
      https://github.com/llvm/llvm-project/commit/c2dacb1cd3cc35213bb278f0746ef42a05e68e70
  Author: Roman Lebedev <lebedev.ri at gmail.com>
  Date:   2021-07-26 (Mon, 26 Jul 2021)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/test/Transforms/SimplifyCFG/preserve-branchweights.ll

  Log Message:
  -----------
  [SimplifyCFG] Fold branch to common dest: if branch is unpredictable, prefer to speculate

This is consistent with the two other usages of prof md in this pass.


Compare: https://github.com/llvm/llvm-project/compare/e7a7ad134fe1...c2dacb1cd3cc


More information about the All-commits mailing list