[all-commits] [llvm/llvm-project] 281668: [ARM][ReachingDefs] Remove dead code in loloops.

Sam Parker via All-commits all-commits at lists.llvm.org
Tue Nov 26 02:28:03 PST 2019


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 28166816b05aebb3154e5f8a28b3ef447cce8471
      https://github.com/llvm/llvm-project/commit/28166816b05aebb3154e5f8a28b3ef447cce8471
  Author: Sam Parker <sam.parker at arm.com>
  Date:   2019-11-26 (Tue, 26 Nov 2019)

  Changed paths:
    M llvm/include/llvm/CodeGen/ReachingDefAnalysis.h
    M llvm/lib/CodeGen/ReachingDefAnalysis.cpp
    M llvm/lib/Target/ARM/ARMLowOverheadLoops.cpp
    M llvm/test/CodeGen/Thumb2/LowOverheadLoops/fast-fp-loops.ll
    M llvm/test/CodeGen/Thumb2/LowOverheadLoops/mve-tail-data-types.ll
    M llvm/test/CodeGen/Thumb2/LowOverheadLoops/vector-arith-codegen.ll
    M llvm/test/CodeGen/Thumb2/LowOverheadLoops/wlstp.mir

  Log Message:
  -----------
  [ARM][ReachingDefs] Remove dead code in loloops.

Add some more helper functions to ReachingDefs to query the uses of
a given MachineInstr and also to query whether two MachineInstrs use
the same def of a register.

For Arm, while tail-predicating, these helpers are used in the
low-overhead loops to remove the dead code that calculates the number
of loop iterations.

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




More information about the All-commits mailing list