13#ifndef LLVM_REMARKS_REMARKLINKER_H
14#define LLVM_REMARKS_REMARKLINKER_H
36 struct RemarkPtrCompare {
37 bool operator()(
const std::unique_ptr<Remark> &
LHS,
38 const std::unique_ptr<Remark> &
RHS)
const {
53 std::set<std::unique_ptr<Remark>, RemarkPtrCompare> Remarks;
56 std::optional<std::string> PrependPath;
60 bool KeepAllRemarks =
true;
67 bool shouldKeepRemark(
const Remark &R) {
68 return KeepAllRemarks ?
true : R.Loc.has_value();
97 bool empty()
const {
return Remarks.empty(); }
105 return {Remarks.begin(), Remarks.end()};
assert(UImm &&(UImm !=~static_cast< T >(0)) &&"Invalid immediate!")
static GCRegistry::Add< OcamlGC > B("ocaml", "ocaml 3.10-compatible GC")
Lightweight error class with error context and mandatory checking.
Tagged union holding either a T or a Error.
StringRef - Represent a constant reference to a string, i.e.
A range adaptor for a pair of iterators.
This class is the base class for all object file types.
This class implements an extremely fast bulk output stream that can only output to a stream.
This is an optimization pass for GlobalISel generic memory operations.
cl::opt< std::string > RemarksFormat("lto-pass-remarks-format", cl::desc("The format used for serializing remarks (default: YAML)"), cl::value_desc("format"), cl::init("yaml"))
An iterator type that allows iterating over the pointees via some other iterator.