Go to the documentation of this file.
147 uint8_t Reserved = 0;
488 assert(
unsigned(EncodedReg) < 4);
501 switch (EncodedReg) {
509 switch (EncodedReg) {
534 case RegisterId::VFRAME:
546 case RegisterId::RSP:
548 case RegisterId::RBP:
550 case RegisterId::R13:
FrameCookieKind CookieKind
This is an optimization pass for GlobalISel generic memory operations.
uint16_t VersionFrontendMajor
std::tuple< uint64_t, uint32_t > InlineSite
LocalVariableAddrRange Range
FrameProcedureOptions Flags
std::vector< LocalVariableAddrGap > Gaps
Error mapByteVectorTail(ArrayRef< uint8_t > &Bytes, const Twine &Comment="")
DefRangeSubfieldRegisterHeader Hdr
Reg
All possible values of the reg field in the ModR/M byte.
static ErrorSuccess success()
Create a success value.
static Error mapLocalVariableAddrRange(CodeViewRecordIO &IO, LocalVariableAddrRange &Range)
Error mapStringZ(StringRef &Value, const Twine &Comment="")
uint16_t VersionBackendBuild
Error mapEnum(T &Value, const Twine &Comment="")
Error padToAlignment(uint32_t Align)
static Error visitKnownRecord(CVSymbol &Record, SymbolVisitorCallbacks &Callbacks)
DefRangeRegisterHeader Hdr
Error beginRecord(Optional< uint32_t > MaxLength)
EncodedFramePtrReg
Two-bit value indicating which register is the designated frame pointer register.
uint16_t VersionFrontendMajor
uint16_t VersionFrontendMinor
uint16_t VersionBackendBuild
uint16_t VersionFrontendMinor
std::vector< StringRef > Fields
Error mapObject(T &Value)
Error visitSymbolEnd(CVSymbol &Record) override
uint16_t VersionFrontendQFE
std::vector< LocalVariableAddrGap > Gaps
LocalVariableAddrRange Range
uint32_t OffsetOfExceptionHandler
LocalVariableAddrRange Range
Error mapVectorN(T &Items, const ElementMapper &Mapper, const Twine &Comment="")
uint32_t BytesOfCalleeSavedRegisters
Value(Type *Ty, unsigned scid)
uint32_t alignOf(CodeViewContainer Container)
std::vector< LocalVariableAddrGap > Gaps
Error mapStringZVectorZ(std::vector< StringRef > &Value, const Twine &Comment="")
This is an important base class in LLVM.
uint16_t VersionFrontendBuild
uint16_t CallInstructionSize
DefRangeRegisterRelHeader Hdr
uint16_t VersionBackendMinor
assert(ImpDefSCC.getReg()==AMDGPU::SCC &&ImpDefSCC.isDef())
LocalVariableAddrRange Range
Error visitSymbolBegin(CVSymbol &Record) override
EncodedFramePtrReg encodeFramePtrReg(RegisterId Reg, CPUType CPU)
uint16_t VersionBackendMajor
StringRef - Represent a constant reference to a string, i.e.
std::vector< StringRef > ExtraStrings
CVRecord is a fat pointer (base + size pair) to a symbol or type record.
#define llvm_unreachable(msg)
Marks that the current location is not supposed to be reachable.
std::vector< LocalVariableAddrGap > Gaps
uint16_t VersionBackendMinor
Error mapInteger(TypeIndex &TypeInd, const Twine &Comment="")
add sub stmia L5 ldr r0 bl L_printf $stub Instead of a and a wouldn t it be better to do three moves *Return an aggregate type is even return S
uint32_t PaddingFrameBytes
std::vector< LocalVariableAddrGap > Gaps
Wrapper class representing virtual and physical registers.
std::vector< StringRef > Strings
Error mapEncodedInteger(int64_t &Value, const Twine &Comment="")
Lightweight error class with error context and mandatory checking.
CPUType
These values correspond to the CV_CPU_TYPE_e enumeration, and are documented here: https://msdn....
uint16_t VersionBackendQFE
std::vector< LocalVariableAddrGap > Gaps
uint16_t SectionIdOfExceptionHandler
uint16_t VersionFrontendBuild
DefRangeFramePointerRelHeader Hdr
uint16_t VersionBackendMajor
LocalVariableAddrRange Range
constexpr Register(unsigned Val=0)
Error mapVectorTail(T &Items, const ElementMapper &Mapper, const Twine &Comment="")
LocalVariableAddrRange Range
RegisterId decodeFramePtrReg(EncodedFramePtrReg EncodedReg, CPUType CPU)