14#ifndef LLVM_DEBUGINFO_SYMBOLIZE_DIPRINTER_H
15#define LLVM_DEBUGINFO_SYMBOLIZE_DIPRINTER_H
49 const std::vector<DILocal> &Locals) = 0;
51 const std::vector<DILineInfo> &Locations) = 0;
86 void printHeader(std::optional<uint64_t>
Address);
96 const std::vector<DILocal> &Locals)
override;
98 const std::vector<DILineInfo> &Locations)
override;
111 void printFooter()
override;
132 std::unique_ptr<json::Array> ObjectList;
148 const std::vector<DILocal> &Locals)
override;
150 const std::vector<DILineInfo> &Locations)
override;
Analysis containing CSE Info
This file supports working with JSON data.
A format-neutral container for inlined code description.
Base class for error info classes.
Base class for user error types.
StringRef - Represent a constant reference to a string, i.e.
json::OStream allows writing well-formed JSON without materializing all structures as json::Value ahe...
void value(const Value &V)
Emit a self-contained value (number, string, vector<string> etc).
A Value is an JSON value of unknown type.
This class implements an extremely fast bulk output stream that can only output to a stream.
virtual void print(const Request &Request, const std::vector< DILocal > &Locals)=0
virtual void listBegin()=0
virtual void print(const Request &Request, const DIGlobal &Global)=0
virtual void print(const Request &Request, const DILineInfo &Info)=0
virtual ~DIPrinter()=default
virtual void print(const Request &Request, const DIInliningInfo &Info)=0
virtual bool printError(const Request &Request, const ErrorInfoBase &ErrorInfo)=0
virtual void print(const Request &Request, const std::vector< DILineInfo > &Locations)=0
GNUPrinter(raw_ostream &OS, ErrorHandler EH, PrinterConfig &Config)
void print(const Request &Request, const DILineInfo &Info) override
JSONPrinter(raw_ostream &OS, PrinterConfig &Config)
void listBegin() override
bool printError(const Request &Request, const ErrorInfoBase &ErrorInfo) override
LLVMPrinter(raw_ostream &OS, ErrorHandler EH, PrinterConfig &Config)
void printContext(SourceCode SourceCode)
virtual void printFooter()
virtual void printStartAddress(const DILineInfo &Info)
bool printError(const Request &Request, const ErrorInfoBase &ErrorInfo) override
PlainPrinterBase(raw_ostream &OS, ErrorHandler EH, PrinterConfig &Config)
virtual void printSimpleLocation(StringRef Filename, const DILineInfo &Info)=0
void printVerbose(StringRef Filename, const DILineInfo &Info)
void printFunctionName(StringRef FunctionName, bool Inlined)
void listBegin() override
void print(const DILineInfo &Info, bool Inlined)
This is an optimization pass for GlobalISel generic memory operations.
@ Global
Append to llvm.global_dtors.
Container for description of a global variable.
A format-neutral container for source line information.
std::optional< uint64_t > Address