[all-commits] [llvm/llvm-project] bb2d23: [ARM] Improve detection of fallthough when alignin...

David Green via All-commits all-commits at lists.llvm.org
Mon Sep 27 03:21:33 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: bb2d23dcd471c2c5f076c2b21b461556334ffa9f
      https://github.com/llvm/llvm-project/commit/bb2d23dcd471c2c5f076c2b21b461556334ffa9f
  Author: David Green <david.green at arm.com>
  Date:   2021-09-27 (Mon, 27 Sep 2021)

  Changed paths:
    M llvm/lib/Target/ARM/ARMConstantIslandPass.cpp
    M llvm/test/CodeGen/Thumb2/aligned-nonfallthrough.ll

  Log Message:
  -----------
  [ARM] Improve detection of fallthough when aligning blocks

We align non-fallthrough branches under Cortex-M at O3 to lead to fewer
instruction fetches. This improves that for the block after a LE or
LETP. These blocks will still have terminating branches until the
LowOverheadLoops pass is run (as they are not handled by analyzeBranch,
the branch is not removed until later), so canFallThrough will return
false. These extra branches will eventually be removed, leaving a
fallthrough, so treat them as such and don't add unnecessary alignments.

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




More information about the All-commits mailing list