9#ifndef LLVM_DEBUGINFO_PDB_NATIVE_TPIHASHING_H
10#define LLVM_DEBUGINFO_PDB_NATIVE_TPIHASHING_H
Tagged union holding either a T or a Error.
The instances of the Type class are immutable: once they are created, they are never changed.
#define llvm_unreachable(msg)
Marks that the current location is not supposed to be reachable.
Expected< uint32_t > hashTypeRecord(const llvm::codeview::CVType &Type)
Expected< TagRecordHash > hashTagRecord(const codeview::CVType &Type)
Given a CVType referring to a class, structure, union, or enum, compute the hash of its forward decl ...
This is an optimization pass for GlobalISel generic memory operations.
OutputIt move(R &&Range, OutputIt Out)
Provide wrappers to std::move which take ranges instead of having to pass begin/end explicitly.
Implement std::hash so that hash_code can be used in STL containers.
codeview::ClassRecord Class
codeview::EnumRecord Enum
TagRecordHash(codeview::UnionRecord UR, uint32_t Full, uint32_t Forward)
TagRecordHash(codeview::EnumRecord ER, uint32_t Full, uint32_t Forward)
codeview::TagRecord & getRecord()
codeview::UnionRecord Union
TagRecordHash(codeview::ClassRecord CR, uint32_t Full, uint32_t Forward)