1. Revert "[DWARFYAML] Add support for referencing different abbrev tables." (details)
  2. Refactor Reduction Tree Pass (details)
Commit 6d242a73264ef1e3e128547f00e0fe2d20d3ada0 by Xing
Revert "[DWARFYAML] Add support for referencing different abbrev tables."

This reverts commit f7ff0ace96db9164dcde232c36cab6519ea4fce8.

This change is causing build failure.
The file was modifiedllvm/test/tools/yaml2obj/ELF/DWARF/debug-abbrev.yaml (diff)
The file was modifiedllvm/test/ObjectYAML/MachO/DWARF-debug_abbrev.yaml (diff)
The file was modifiedllvm/lib/ObjectYAML/DWARFYAML.cpp (diff)
The file was modifiedllvm/test/ObjectYAML/MachO/DWARF-debug_info.yaml (diff)
The file was modifiedllvm/lib/ObjectYAML/DWARFEmitter.cpp (diff)
The file was modifiedllvm/test/ObjectYAML/MachO/DWARF5-debug_info.yaml (diff)
The file was modifiedllvm/unittests/DebugInfo/DWARF/DWARFDebugInfoTest.cpp (diff)
The file was modifiedllvm/include/llvm/ObjectYAML/DWARFYAML.h (diff)
The file was modifiedllvm/tools/obj2yaml/dwarf2yaml.cpp (diff)
The file was modifiedllvm/lib/ObjectYAML/ELFEmitter.cpp (diff)
The file was modifiedllvm/test/tools/yaml2obj/ELF/DWARF/debug-info.yaml (diff)
Commit 21f8d414689387d97120a49df3dabca10e3262e4 by sifontes
Refactor Reduction Tree Pass

Refactor the way the reduction tree pass works in the MLIR Reduce tool by introducing a set of utilities that facilitate the implementation of new Reducer classes to be used in the passes.

This will allow for the fast implementation of general transformations to operate on all mlir modules as well as custom transformations for different dialects.

These utilities allow for the implementation of Reducer classes by simply defining a method that indexes the operations/blocks/regions to be transformed and a method to perform the deletion or transfomration based on the indexes.

Create the transformSpace class member in the ReductionNode class to keep track of the indexes that have already been transformed or deleted at a current level.

Delete the FunctionReducer class and replace it with the OpReducer class to reflect this new API while performing the same transformation and allowing the instantiation of a reduction pass for different types of operations at the module's highest hierarchichal level.

Modify the SinglePath Traversal method to reflect the use of the new API.

Reviewed: jpienaar

Differential Revision:
The file was modifiedmlir/tools/mlir-reduce/CMakeLists.txt (diff)
The file was removedmlir/tools/mlir-reduce/Passes/FunctionReducer.cpp
The file was removedmlir/include/mlir/Reducer/Passes/FunctionReducer.h
The file was modifiedmlir/tools/mlir-reduce/OptReductionPass.cpp (diff)
The file was modifiedmlir/tools/mlir-reduce/mlir-reduce.cpp (diff)
The file was addedmlir/include/mlir/Reducer/ReductionTreeUtils.h
The file was addedmlir/tools/mlir-reduce/Passes/OpReducer.cpp
The file was addedmlir/tools/mlir-reduce/ReductionTreeUtils.cpp
The file was modifiedmlir/include/mlir/Reducer/OptReductionPass.h (diff)
The file was modifiedmlir/tools/mlir-reduce/ReductionNode.cpp (diff)
The file was modifiedmlir/include/mlir/Reducer/ReductionTreePass.h (diff)
The file was modifiedmlir/include/mlir/Reducer/ReductionNode.h (diff)
The file was removedmlir/tools/mlir-reduce/ReductionTreePass.cpp
The file was addedmlir/include/mlir/Reducer/Passes/OpReducer.h