13#ifndef LLVM_LIB_REMARKS_BITSTREAM_REMARK_PARSER_H
14#define LLVM_LIB_REMARKS_BITSTREAM_REMARK_PARSER_H
44 template <
typename... Ts>
Error error(
char const *Fmt,
const Ts &...Vals) {
47 OS <<
"Error while parsing " <<
BlockName <<
" block: ";
51 std::make_error_code(std::errc::illegal_byte_sequence));
65template <
typename Derived>
69 Derived &
derived() {
return *
static_cast<Derived *
>(
this); }
92 return Next.takeError();
105 return error(
"Unexpected end of bitstream.");
157 std::optional<RemarkLoc>
Loc;
169 std::optional<RemarkLoc>
Loc;
251 std::optional<StringRef> ExternalFilePrependPath = std::nullopt);
static GCRegistry::Add< CoreCLRGC > E("coreclr", "CoreCLR-compatible GC")
This class maintains the abbreviations read from a block info block.
This represents a position within a bitcode file, implemented on top of a SimpleBitstreamCursor.
Lightweight error class with error context and mandatory checking.
static ErrorSuccess success()
Create a success value.
Tagged union holding either a T or a Error.
This is a 'vector' (really, a variable-sized array), optimized for the case when the array is small.
StringRef - Represent a constant reference to a string, i.e.
A raw_ostream that writes to an std::string.
#define llvm_unreachable(msg)
Marks that the current location is not supposed to be reachable.
This is an optimization pass for GlobalISel generic memory operations.
auto formatv(bool Validate, const char *Fmt, Ts &&...Vals)
Error make_error(ArgTs &&... Args)
Make a Error instance representing failure using the given error info type.
FunctionAddr VTableAddr Next