[all-commits] [llvm/llvm-project] 11b34e: [ARM] Define CPSR on MEMCPY pseudos

David Green via All-commits all-commits at lists.llvm.org
Fri May 14 07:09:51 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 11b34e78c1e2fd5e7cec224d99400216334e2893
      https://github.com/llvm/llvm-project/commit/11b34e78c1e2fd5e7cec224d99400216334e2893
  Author: David Green <david.green at arm.com>
  Date:   2021-05-14 (Fri, 14 May 2021)

  Changed paths:
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/ARM/ARMInstrMVE.td
    M llvm/test/CodeGen/Thumb2/mve-tp-loop.ll
    M llvm/test/CodeGen/Thumb2/mve-tp-loop.mir

  Log Message:
  -----------
  [ARM] Define CPSR on MEMCPY pseudos

These pseudos are converted post-isel into t2WhileLoopStart and
t2LoopEnd/LoopDec instructions, which themselves are defined to clobber
CPSR. Doing the same with the MEMCPY nodes will make sure they are
scheduled correctly to not end up with incorrect uses.


  Commit: ce76093c3c860599ceb3d588fb80700cd69f1b46
      https://github.com/llvm/llvm-project/commit/ce76093c3c860599ceb3d588fb80700cd69f1b46
  Author: David Green <david.green at arm.com>
  Date:   2021-05-14 (Fri, 14 May 2021)

  Changed paths:
    M llvm/lib/Target/ARM/MVETPAndVPTOptimisationsPass.cpp
    M llvm/test/CodeGen/Thumb2/LowOverheadLoops/memcall.ll
    A llvm/test/CodeGen/Thumb2/LowOverheadLoops/wls-search-pred.mir

  Log Message:
  -----------
  [ARM] Expand predecessor search to multiple blocks when reverting WhileLoopStarts

We were previously only searching a single preheader for call
instructions when reverting WhileLoopStarts to DoLoopStarts. This
extends that to multiple blocks that can come up when, for example a
loop is expanded from a memcpy. It also expends the instructions from
just Call's to also include other LoopStarts, to catch other low
overhead loops in the preheader.

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


Compare: https://github.com/llvm/llvm-project/compare/b41e1306b80f...ce76093c3c86


More information about the All-commits mailing list