Go to the documentation of this file.
9 #ifndef LLVM_SUPPORT_ELFATTRIBUTEPARSER_H
10 #define LLVM_SUPPORT_ELFATTRIBUTEPARSER_H
18 #include <unordered_map>
26 std::unordered_map<unsigned, unsigned> attributes;
27 std::unordered_map<unsigned, StringRef> attributesStr;
65 auto I = attributesStr.find(tag);
66 if (
I == attributesStr.end())
This is an optimization pass for GlobalISel generic memory operations.
Error parseStringAttribute(const char *name, unsigned tag, ArrayRef< const char * > strings)
void printAttribute(unsigned tag, unsigned value, StringRef valueDesc)
Optional< StringRef > getAttributeString(unsigned tag) const
ELFAttributeParser(TagNameMap tagNameMap, StringRef vendor)
Deduce and propagate attributes
ELFAttributeParser(ScopedPrinter *sw, TagNameMap tagNameMap, StringRef vendor)
Error parseAttributeList(uint32_t length)
virtual ~ELFAttributeParser()
Error parse(ArrayRef< uint8_t > section, support::endianness endian)
StringRef - Represent a constant reference to a string, i.e.
DataExtractor::Cursor cursor
Error integerAttribute(unsigned tag)
Lightweight error class with error context and mandatory checking.
Error parseSubsection(uint32_t length)
TagNameMap tagToStringMap
Error stringAttribute(unsigned tag)
Optional< unsigned > getAttributeValue(unsigned tag) const
void parseIndexList(SmallVectorImpl< uint8_t > &indexList)