[all-commits] [llvm/llvm-project] 54e5de: [ARM][LSR] Exclude uses outside the loop when favo...

David Green via All-commits all-commits at lists.llvm.org
Mon Sep 25 02:09:50 PDT 2023


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

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
    M llvm/test/CodeGen/Thumb2/mve-useafterloop.ll

  Log Message:
  -----------
  [ARM][LSR] Exclude uses outside the loop when favoring postinc. (#67090)

Extra uses for variables outside the loop can mess with the generation
of postinc variables. This patch alters the collection of loop invariant
fixups in LSR when the target is optimizing for PostInc, to exclude the
collection of these extra uses. It is expected that the variable can be
rematerialized, which will lead to a more optimal sequence of
instructions in the loop.




More information about the All-commits mailing list