//===- DwarfTransformer.h ---------------------------------------*- C++ -*-===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// #ifndef LLVM_DEBUGINFO_GSYM_DWARFTRANSFORMER_H #define LLVM_DEBUGINFO_GSYM_DWARFTRANSFORMER_H #include "llvm/ADT/StringRef.h" #include "llvm/DebugInfo/GSYM/ExtractRanges.h" #include "llvm/Support/Error.h" namespace llvm { class raw_ostream; namespace gsym { struct CUInfo; struct FunctionInfo; class GsymCreator; class OutputAggregator; /// A class that transforms the DWARF in a DWARFContext into GSYM information /// by populating the GsymCreator object that it is constructed with. This /// class supports converting all DW_TAG_subprogram DIEs into /// gsym::FunctionInfo objects that includes line table information and inline /// function information. Creating a separate class to transform this data /// allows this class to be unit tested. class DwarfTransformer { … }; } // namespace gsym } // namespace llvm #endif // LLVM_DEBUGINFO_GSYM_DWARFTRANSFORMER_H