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 79 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
90 // Load the object at |slot_index| in |context| into the accumulator. | 90 // Load the object at |slot_index| in |context| into the accumulator. |
91 BytecodeArrayBuilder& LoadContextSlot(Register context, int slot_index); | 91 BytecodeArrayBuilder& LoadContextSlot(Register context, int slot_index); |
92 | 92 |
93 // Stores the object in the accumulator into |slot_index| of |context|. | 93 // Stores the object in the accumulator into |slot_index| of |context|. |
94 BytecodeArrayBuilder& StoreContextSlot(Register context, int slot_index); | 94 BytecodeArrayBuilder& StoreContextSlot(Register context, int slot_index); |
95 | 95 |
96 // Register-accumulator transfers. | 96 // Register-accumulator transfers. |
97 BytecodeArrayBuilder& LoadAccumulatorWithRegister(Register reg); | 97 BytecodeArrayBuilder& LoadAccumulatorWithRegister(Register reg); |
98 BytecodeArrayBuilder& StoreAccumulatorInRegister(Register reg); | 98 BytecodeArrayBuilder& StoreAccumulatorInRegister(Register reg); |
99 | 99 |
| 100 // Register-register transfer. |
| 101 BytecodeArrayBuilder& MoveRegister(Register from, Register to); |
| 102 |
100 // Named load property. | 103 // Named load property. |
101 BytecodeArrayBuilder& LoadNamedProperty(Register object, size_t name_index, | 104 BytecodeArrayBuilder& LoadNamedProperty(Register object, size_t name_index, |
102 int feedback_slot, | 105 int feedback_slot, |
103 LanguageMode language_mode); | 106 LanguageMode language_mode); |
104 // Keyed load property. The key should be in the accumulator. | 107 // Keyed load property. The key should be in the accumulator. |
105 BytecodeArrayBuilder& LoadKeyedProperty(Register object, int feedback_slot, | 108 BytecodeArrayBuilder& LoadKeyedProperty(Register object, int feedback_slot, |
106 LanguageMode language_mode); | 109 LanguageMode language_mode); |
107 | 110 |
108 // Store properties. The value to be stored should be in the accumulator. | 111 // Store properties. The value to be stored should be in the accumulator. |
109 BytecodeArrayBuilder& StoreNamedProperty(Register object, size_t name_index, | 112 BytecodeArrayBuilder& StoreNamedProperty(Register object, size_t name_index, |
(...skipping 240 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
350 | 353 |
351 DISALLOW_COPY_AND_ASSIGN(TemporaryRegisterScope); | 354 DISALLOW_COPY_AND_ASSIGN(TemporaryRegisterScope); |
352 }; | 355 }; |
353 | 356 |
354 | 357 |
355 } // namespace interpreter | 358 } // namespace interpreter |
356 } // namespace internal | 359 } // namespace internal |
357 } // namespace v8 | 360 } // namespace v8 |
358 | 361 |
359 #endif // V8_INTERPRETER_BYTECODE_ARRAY_BUILDER_H_ | 362 #endif // V8_INTERPRETER_BYTECODE_ARRAY_BUILDER_H_ |
OLD | NEW |