[all-commits] [llvm/llvm-project] f22b4c: [ARM] Handle debug instrs in ARM Low Overhead Loop...

Victor Campos via All-commits all-commits at lists.llvm.org
Tue Mar 23 04:49:32 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: f22b4c7122bc86c640f75fd8b2b165d124204105
      https://github.com/llvm/llvm-project/commit/f22b4c7122bc86c640f75fd8b2b165d124204105
  Author: Victor Campos <victor.campos at arm.com>
  Date:   2021-03-23 (Tue, 23 Mar 2021)

  Changed paths:
    M llvm/lib/Target/ARM/ARMLowOverheadLoops.cpp
    A llvm/test/CodeGen/Thumb2/LowOverheadLoops/skip-vpt-debug.mir

  Log Message:
  -----------
  [ARM] Handle debug instrs in ARM Low Overhead Loop pass

In function ConvertVPTBlocks(), it is assumed that every instruction
within a vector-predicated block is predicated. This is false for debug
instructions, used by LLVM.

Because of this, an assertion failure is reached when an input contains
debug instructions inside VPT blocks. In non-assert builds, an out of
bounds memory access took place.

The present patch properly covers the case of debug instructions.

Reviewed By: dmgreen

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




More information about the All-commits mailing list