[all-commits] [llvm/llvm-project] d55dfe: [BOLT] Replace uses of layout with basic block list

Fabian Parzefall via All-commits all-commits at lists.llvm.org
Thu Jul 14 13:08:55 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: d55dfeaf32e8a88f0c6e7240fb2a8a1b57d89380
      https://github.com/llvm/llvm-project/commit/d55dfeaf32e8a88f0c6e7240fb2a8a1b57d89380
  Author: Fabian Parzefall <parzefall at fb.com>
  Date:   2022-07-14 (Thu, 14 Jul 2022)

  Changed paths:
    M bolt/include/bolt/Core/BinaryFunction.h
    M bolt/lib/Core/BinaryFunction.cpp
    M bolt/lib/Passes/ADRRelaxationPass.cpp
    M bolt/lib/Passes/Aligner.cpp
    M bolt/lib/Passes/BinaryPasses.cpp
    M bolt/lib/Passes/CacheMetrics.cpp
    M bolt/lib/Passes/IndirectCallPromotion.cpp
    M bolt/lib/Passes/Inliner.cpp
    M bolt/lib/Passes/PLTCall.cpp
    M bolt/lib/Passes/SplitFunctions.cpp
    M bolt/lib/Passes/ThreeWayBranch.cpp

  Log Message:
  -----------
  [BOLT] Replace uses of layout with basic block list

As we are moving towards support for multiple fragments, loops that
iterate over all basic blocks of a function, but do not depend on the
order of basic blocks in the final layout, should iterate over binary
functions directly, rather than the layout.

Eventually, all loops using the layout list should either iterate over
the function, or be aware of multiple layouts. This patch replaces
references to binary function's block layout with the binary function
itself where only little code changes are necessary.

Reviewed By: maksfb

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




More information about the All-commits mailing list