[all-commits] [llvm/llvm-project] c1b825: [SimplifyCFG] Teach FoldValueComparisonIntoPredece...

Roman Lebedev via All-commits all-commits at lists.llvm.org
Thu Dec 31 16:26:06 PST 2020


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: c1b825d4b8a68178613972a50088b2b73105e91e
      https://github.com/llvm/llvm-project/commit/c1b825d4b8a68178613972a50088b2b73105e91e
  Author: Roman Lebedev <lebedev.ri at gmail.com>
  Date:   2021-01-01 (Fri, 01 Jan 2021)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/test/Transforms/ADCE/domtree-DoubleDeletion.ll
    M llvm/test/Transforms/JumpThreading/lvi-tristate.ll
    M llvm/test/Transforms/SimplifyCFG/2005-08-01-PHIUpdateFail.ll
    M llvm/test/Transforms/SimplifyCFG/2006-08-03-Crash.ll
    M llvm/test/Transforms/SimplifyCFG/ARM/switch-to-lookup-table.ll
    M llvm/test/Transforms/SimplifyCFG/DeadSetCC.ll
    M llvm/test/Transforms/SimplifyCFG/X86/MagicPointer.ll
    M llvm/test/Transforms/SimplifyCFG/preserve-branchweights-partial.ll
    M llvm/test/Transforms/SimplifyCFG/preserve-branchweights-switch-create.ll

  Log Message:
  -----------
  [SimplifyCFG] Teach FoldValueComparisonIntoPredecessors() to preserve DomTree, part 1


  Commit: b7c463d7b8dda2c2b3e9a4db51f94dc94542ee68
      https://github.com/llvm/llvm-project/commit/b7c463d7b8dda2c2b3e9a4db51f94dc94542ee68
  Author: Roman Lebedev <lebedev.ri at gmail.com>
  Date:   2021-01-01 (Fri, 01 Jan 2021)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/test/Transforms/SimplifyCFG/branch-fold.ll

  Log Message:
  -----------
  [SimplifyCFG] Teach FoldBranchToCommonDest() to preserve DomTree, part 2


  Commit: 9f17dab1f48eed788d29e4c6f045e64b0679b3a9
      https://github.com/llvm/llvm-project/commit/9f17dab1f48eed788d29e4c6f045e64b0679b3a9
  Author: Roman Lebedev <lebedev.ri at gmail.com>
  Date:   2021-01-01 (Fri, 01 Jan 2021)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/test/Transforms/SimplifyCFG/indirectbr.ll

  Log Message:
  -----------
  [SimplifyCFG] Teach simplifyIndirectBr() to preserve DomTree


  Commit: 0d2f219d4d0b4c61491508e6980055ecc241418c
      https://github.com/llvm/llvm-project/commit/0d2f219d4d0b4c61491508e6980055ecc241418c
  Author: Roman Lebedev <lebedev.ri at gmail.com>
  Date:   2021-01-01 (Fri, 01 Jan 2021)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/test/Transforms/SimplifyCFG/switch_thread.ll

  Log Message:
  -----------
  [SimplifyCFG] Teach SimplifyEqualityComparisonWithOnlyPredecessor() to preserve DomTree, part 3


  Commit: a815b6b2b2cc483cfe9d2b520790322a39f8d37b
      https://github.com/llvm/llvm-project/commit/a815b6b2b2cc483cfe9d2b520790322a39f8d37b
  Author: Roman Lebedev <lebedev.ri at gmail.com>
  Date:   2021-01-01 (Fri, 01 Jan 2021)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/test/Transforms/SimplifyCFG/switch-masked-bits.ll
    M llvm/test/Transforms/SimplifyCFG/switch-simplify-crash.ll

  Log Message:
  -----------
  [SimplifyCFG] Teach eliminateDeadSwitchCases() to preserve DomTree, part 1


  Commit: 8866583953f1e9038b5ca4ed4c199e0476790e0c
      https://github.com/llvm/llvm-project/commit/8866583953f1e9038b5ca4ed4c199e0476790e0c
  Author: Roman Lebedev <lebedev.ri at gmail.com>
  Date:   2021-01-01 (Fri, 01 Jan 2021)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/test/Transforms/PGOProfile/chr.ll
    M llvm/test/Transforms/SimplifyCFG/2008-12-16-DCECond.ll
    M llvm/test/Transforms/SimplifyCFG/switch_switch_fold.ll

  Log Message:
  -----------
  [SimplifyCFG] Teach FoldValueComparisonIntoPredecessors() to preserve DomTree, part 2


  Commit: e1440d43bca5438544a12bebe82a3cd1a37157f1
      https://github.com/llvm/llvm-project/commit/e1440d43bca5438544a12bebe82a3cd1a37157f1
  Author: Roman Lebedev <lebedev.ri at gmail.com>
  Date:   2021-01-01 (Fri, 01 Jan 2021)

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

  Log Message:
  -----------
  [SimplifyCFG] Teach tryToSimplifyUncondBranchWithICmpInIt() to preserve DomTree


  Commit: 831636b0e6321500fd7bf3f32e8663369152a956
      https://github.com/llvm/llvm-project/commit/831636b0e6321500fd7bf3f32e8663369152a956
  Author: Roman Lebedev <lebedev.ri at gmail.com>
  Date:   2021-01-01 (Fri, 01 Jan 2021)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/test/Transforms/SimplifyCFG/switch-range-to-icmp.ll

  Log Message:
  -----------
  [SimplifyCFG] SUCCESS! Teach createUnreachableSwitchDefault() to preserve DomTree

This pretty much concludes patch series for updating SimplifyCFG
to preserve DomTree. All 318 dedicated `-simplifycfg` tests now pass
with `-simplifycfg-require-and-preserve-domtree=1`.

There are a few leftovers that apparently don't have good test coverage.
I do not yet know what gaps in test coverage will the wider-scale testing
reveal, but the default flip might be close.


Compare: https://github.com/llvm/llvm-project/compare/b6b1006f0719...831636b0e632


More information about the All-commits mailing list