24 for (
unsigned i = 0, e =
Other.size(); i < e; ++i)
32 size_t NextID =
StrTab.size();
33 auto KV =
StrTab.insert({Str, NextID});
38 return {KV.first->second, KV.first->first()};
47 Impl(R.Loc->SourceFilePath);
52 Impl(Arg.
Loc->SourceFilePath);
66 std::vector<StringRef> Strings{
StrTab.size()};
67 for (
const auto &KV :
StrTab)
68 Strings[KV.second] = KV.first();
std::optional< std::vector< StOtherPiece > > Other
Tagged union holding either a T or a Error.
StringRef - Represent a constant reference to a string, i.e.
This class implements an extremely fast bulk output stream that can only output to a stream.
raw_ostream & write(unsigned char C)
#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.