Changeset View
Changeset View
Standalone View
Standalone View
llvm/include/llvm/Target/Target.td
Show First 20 Lines • Show All 180 Lines • ▼ Show 20 Lines | class Register<string n, list<string> altNames = []> { | ||||
// x86 register AX is covered by its sub-registers AL and AH, but EAX is not | // x86 register AX is covered by its sub-registers AL and AH, but EAX is not | ||||
// covered by its sub-register AX. | // covered by its sub-register AX. | ||||
bit CoveredBySubRegs = false; | bit CoveredBySubRegs = false; | ||||
// HWEncoding - The target specific hardware encoding for this register. | // HWEncoding - The target specific hardware encoding for this register. | ||||
bits<16> HWEncoding = 0; | bits<16> HWEncoding = 0; | ||||
bit isArtificial = false; | bit isArtificial = false; | ||||
// isConstant - This register always holds a constant value (e.g. the zero | |||||
// register in architectures such as MIPS) | |||||
bit isConstant = false; | |||||
} | } | ||||
// RegisterWithSubRegs - This can be used to define instances of Register which | // RegisterWithSubRegs - This can be used to define instances of Register which | ||||
// need to specify sub-registers. | // need to specify sub-registers. | ||||
// List "subregs" specifies which registers are sub-registers to this one. This | // List "subregs" specifies which registers are sub-registers to this one. This | ||||
// is used to populate the SubRegs and AliasSet fields of TargetRegisterDesc. | // is used to populate the SubRegs and AliasSet fields of TargetRegisterDesc. | ||||
// This allows the code generator to be careful not to put two values with | // This allows the code generator to be careful not to put two values with | ||||
// overlapping live ranges into registers which alias. | // overlapping live ranges into registers which alias. | ||||
▲ Show 20 Lines • Show All 1,601 Lines • Show Last 20 Lines |