//===-- llvm/CodeGen/DebugHandlerBase.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 // //===----------------------------------------------------------------------===// // // Common functionality for different debug information format backends. // LLVM currently supports DWARF and CodeView. // //===----------------------------------------------------------------------===// #ifndef LLVM_CODEGEN_DEBUGHANDLERBASE_H #define LLVM_CODEGEN_DEBUGHANDLERBASE_H #include "llvm/CodeGen/AsmPrinterHandler.h" #include "llvm/CodeGen/DbgEntityHistoryCalculator.h" #include "llvm/CodeGen/LexicalScopes.h" #include "llvm/IR/DebugInfoMetadata.h" #include "llvm/IR/DebugLoc.h" #include <optional> namespace llvm { class AsmPrinter; class MachineInstr; class MachineModuleInfo; /// Represents the location at which a variable is stored. struct DbgVariableLocation { … }; /// Base class for debug information backends. Common functionality related to /// tracking which variables and scopes are alive at a given PC live here. class DebugHandlerBase { … }; } // namespace llvm #endif