[all-commits] [llvm/llvm-project] 0315fc: [AArch64] Move branch relaxation after bbsection a...

Daniel Hoekwater via All-commits all-commits at lists.llvm.org
Fri Jul 21 13:25:39 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 0315fca9120b84487870412adb8edc586eda704f
      https://github.com/llvm/llvm-project/commit/0315fca9120b84487870412adb8edc586eda704f
  Author: Daniel Hoekwater <hoekwater at google.com>
  Date:   2023-07-21 (Fri, 21 Jul 2023)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetPassConfig.h
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
    M llvm/test/CodeGen/AArch64/O0-pipeline.ll
    M llvm/test/CodeGen/AArch64/O3-pipeline.ll
    M llvm/test/CodeGen/AArch64/arm64-opt-remarks-lazy-bfi.ll
    M llvm/test/CodeGen/AArch64/seh_funclet_x1.ll
    M llvm/test/CodeGen/AArch64/wineh-try-catch.ll
    M llvm/test/DebugInfo/AArch64/fallthrough-branch.ll

  Log Message:
  -----------
  [AArch64] Move branch relaxation after bbsection assignment

Because branch relaxation needs to factor in if branches target
a block in the same section or a different one, it needs to run
after the Basic Block Sections / Machine Function Splitting passes.

Because Jump table compression relies on block offsets remaining
fixed after the table is compressed, we must also move the JT
compression pass.

The only tests affected are ones enforcing just the ordering and
the a few that have basic block ids changed because RenumberBlocks
hasn't run yet.

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




More information about the All-commits mailing list