Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 14 additions & 4 deletions llvm/include/llvm/MC/MCDwarf.h
Original file line number Diff line number Diff line change
Expand Up @@ -538,10 +538,20 @@ class MCCFIInstruction {

// Held in ExtraFields for most common OpTypes, exceptions follow.
struct CommonFields {
unsigned Register = std::numeric_limits<unsigned>::max();
int64_t Offset = 0;
unsigned Register2 = std::numeric_limits<unsigned>::max();
unsigned AddressSpace = 0;
unsigned Register;
int64_t Offset;
unsigned Register2;
unsigned AddressSpace;
// FIXME: Workaround for GCC7 bug with nested class used as std::variant
// alternative where the compiler really wants a user-defined default
// constructor. Once we no longer support GCC7 these constructors can be
// replaced with default member initializers and aggregate initialization.
CommonFields(unsigned Reg, int64_t Off = 0,
unsigned Reg2 = std::numeric_limits<unsigned>::max(),
unsigned AddrSpace = 0)
: Register(Reg), Offset(Off), Register2(Reg2), AddressSpace(AddrSpace) {
}
CommonFields() : CommonFields(std::numeric_limits<unsigned>::max()) {}
};
// Held in ExtraFields when OpEscape.
struct EscapeFields {
Expand Down
Loading