OLD | NEW |
1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_INTERPRETER_BYTECODE_ARRAY_BUILDER_H_ | 5 #ifndef V8_INTERPRETER_BYTECODE_ARRAY_BUILDER_H_ |
6 #define V8_INTERPRETER_BYTECODE_ARRAY_BUILDER_H_ | 6 #define V8_INTERPRETER_BYTECODE_ARRAY_BUILDER_H_ |
7 | 7 |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "src/ast.h" | 10 #include "src/ast.h" |
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
89 // Load the object at |slot_index| in |context| into the accumulator. | 89 // Load the object at |slot_index| in |context| into the accumulator. |
90 BytecodeArrayBuilder& LoadContextSlot(Register context, int slot_index); | 90 BytecodeArrayBuilder& LoadContextSlot(Register context, int slot_index); |
91 | 91 |
92 // Stores the object in the accumulator into |slot_index| of |context|. | 92 // Stores the object in the accumulator into |slot_index| of |context|. |
93 BytecodeArrayBuilder& StoreContextSlot(Register context, int slot_index); | 93 BytecodeArrayBuilder& StoreContextSlot(Register context, int slot_index); |
94 | 94 |
95 // Register-accumulator transfers. | 95 // Register-accumulator transfers. |
96 BytecodeArrayBuilder& LoadAccumulatorWithRegister(Register reg); | 96 BytecodeArrayBuilder& LoadAccumulatorWithRegister(Register reg); |
97 BytecodeArrayBuilder& StoreAccumulatorInRegister(Register reg); | 97 BytecodeArrayBuilder& StoreAccumulatorInRegister(Register reg); |
98 | 98 |
| 99 // Register-register transfer. |
| 100 BytecodeArrayBuilder& MoveRegister(Register from, Register to); |
| 101 |
99 // Named load property. | 102 // Named load property. |
100 BytecodeArrayBuilder& LoadNamedProperty(Register object, size_t name_index, | 103 BytecodeArrayBuilder& LoadNamedProperty(Register object, size_t name_index, |
101 int feedback_slot, | 104 int feedback_slot, |
102 LanguageMode language_mode); | 105 LanguageMode language_mode); |
103 // Keyed load property. The key should be in the accumulator. | 106 // Keyed load property. The key should be in the accumulator. |
104 BytecodeArrayBuilder& LoadKeyedProperty(Register object, int feedback_slot, | 107 BytecodeArrayBuilder& LoadKeyedProperty(Register object, int feedback_slot, |
105 LanguageMode language_mode); | 108 LanguageMode language_mode); |
106 | 109 |
107 // Store properties. The value to be stored should be in the accumulator. | 110 // Store properties. The value to be stored should be in the accumulator. |
108 BytecodeArrayBuilder& StoreNamedProperty(Register object, size_t name_index, | 111 BytecodeArrayBuilder& StoreNamedProperty(Register object, size_t name_index, |
(...skipping 235 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
344 | 347 |
345 DISALLOW_COPY_AND_ASSIGN(TemporaryRegisterScope); | 348 DISALLOW_COPY_AND_ASSIGN(TemporaryRegisterScope); |
346 }; | 349 }; |
347 | 350 |
348 | 351 |
349 } // namespace interpreter | 352 } // namespace interpreter |
350 } // namespace internal | 353 } // namespace internal |
351 } // namespace v8 | 354 } // namespace v8 |
352 | 355 |
353 #endif // V8_INTERPRETER_BYTECODE_ARRAY_BUILDER_H_ | 356 #endif // V8_INTERPRETER_BYTECODE_ARRAY_BUILDER_H_ |
OLD | NEW |