Lines Matching defs:Register
19 // An interpreter Register which is located in the function's Register file
20 // in its stack-frame. Register hold parameters, this, and expression values.
21 class V8_EXPORT_PRIVATE Register final {
23 constexpr explicit Register(int index = kInvalidIndex) : index_(index) {}
29 static Register FromParameterIndex(int index);
33 static Register invalid_value() { return Register(); }
36 static Register function_closure();
40 static Register current_context();
44 static Register bytecode_array();
48 static Register bytecode_offset();
52 static Register argument_count();
57 static Register virtual_accumulator();
64 static Register FromOperand(int32_t operand) {
65 return Register(kRegisterFileStartOffset - operand);
68 static constexpr Register FromShortStar(Bytecode bytecode) {
70 return Register(static_cast<int>(Bytecode::kStar0) -
85 static bool AreContiguous(Register reg1, Register reg2,
86 Register reg3 = invalid_value(),
87 Register reg4 = invalid_value(),
88 Register reg5 = invalid_value());
92 bool operator==(const Register& other) const {
95 bool operator!=(const Register& other) const {
98 bool operator<(const Register& other) const {
101 bool operator<=(const Register& other) const {
104 bool operator>(const Register& other) const {
107 bool operator>=(const Register& other) const {
124 : first_reg_index_(Register::invalid_value().index()),
126 explicit RegisterList(Register r) : RegisterList(r.index(), 1) {}
140 const Register operator[](size_t i) const {
142 return Register(first_reg_index_ + static_cast<int>(i));
145 const Register first_register() const {
146 return (register_count() == 0) ? Register(0) : (*this)[0];
149 const Register last_register() const {
150 return (register_count() == 0) ? Register(0) : (*this)[register_count_ - 1];