[llvm-reduce] Add pass that reduces DebugInfo metadata
authorMatthew Voss <matthew.voss@sony.com>
Thu, 6 Oct 2022 21:20:13 +0000 (14:20 -0700)
committerMatthew Voss <matthew.voss@sony.com>
Thu, 6 Oct 2022 21:24:39 +0000 (14:24 -0700)
commit2c799b7793ccdce1759b779f45f10ce5755b9d5d
tree02e87717c6bc659e4e0415d2941bb2e310f27e0d
parentd71dc357b1d661e8ca9ccff2466e02b14f0f243f
[llvm-reduce] Add pass that reduces DebugInfo metadata

This new pass for llvm-reduce attempts to reduce DebugInfo metadata.
The process used is:
  1. Scan every MD node, keeping track of nodes already visited.
  2. Look for DebugInfo nodes, then record any operands that are lists.
  3. Bisect though all the elements of the collected lists.

Differential Revision: https://reviews.llvm.org/D132077
llvm/test/tools/llvm-reduce/Inputs/remove-dimetadata.py [new file with mode: 0644]
llvm/test/tools/llvm-reduce/remove-debug-info-nodes.ll
llvm/test/tools/llvm-reduce/remove-dimetadata.ll [new file with mode: 0644]
llvm/tools/llvm-reduce/CMakeLists.txt
llvm/tools/llvm-reduce/DeltaManager.cpp
llvm/tools/llvm-reduce/deltas/ReduceDIMetadata.cpp [new file with mode: 0644]
llvm/tools/llvm-reduce/deltas/ReduceDIMetadata.h [new file with mode: 0644]