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 "src/ast/ast.h" | 8 #include "src/ast/ast.h" |
9 #include "src/base/compiler-specific.h" | 9 #include "src/base/compiler-specific.h" |
10 #include "src/globals.h" | 10 #include "src/globals.h" |
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
130 // Named load property of the @@asyncIterator symbol. | 130 // Named load property of the @@asyncIterator symbol. |
131 BytecodeArrayBuilder& LoadAsyncIteratorProperty(Register object, | 131 BytecodeArrayBuilder& LoadAsyncIteratorProperty(Register object, |
132 int feedback_slot); | 132 int feedback_slot); |
133 | 133 |
134 // Store properties. Flag for NeedsSetFunctionName() should | 134 // Store properties. Flag for NeedsSetFunctionName() should |
135 // be in the accumulator. | 135 // be in the accumulator. |
136 BytecodeArrayBuilder& StoreDataPropertyInLiteral( | 136 BytecodeArrayBuilder& StoreDataPropertyInLiteral( |
137 Register object, Register name, DataPropertyInLiteralFlags flags, | 137 Register object, Register name, DataPropertyInLiteralFlags flags, |
138 int feedback_slot); | 138 int feedback_slot); |
139 | 139 |
140 // Collect type information for developer tools. The value for which we | |
141 // record the type is stored in the accumulator. | |
142 // TODO(franzih): Do not pass the name, instead use the source position. | |
143 BytecodeArrayBuilder& CollectTypeProfile(Register name, int feedback_slot); | |
144 | |
145 // Store a property named by a property name. The value to be stored should be | 140 // Store a property named by a property name. The value to be stored should be |
146 // in the accumulator. | 141 // in the accumulator. |
147 BytecodeArrayBuilder& StoreNamedProperty(Register object, | 142 BytecodeArrayBuilder& StoreNamedProperty(Register object, |
148 const AstRawString* name, | 143 const AstRawString* name, |
149 int feedback_slot, | 144 int feedback_slot, |
150 LanguageMode language_mode); | 145 LanguageMode language_mode); |
151 // Store a property named by a constant from the constant pool. The value to | 146 // Store a property named by a constant from the constant pool. The value to |
152 // be stored should be in the accumulator. | 147 // be stored should be in the accumulator. |
153 BytecodeArrayBuilder& StoreNamedProperty(Register object, | 148 BytecodeArrayBuilder& StoreNamedProperty(Register object, |
154 size_t constant_pool_entry, | 149 size_t constant_pool_entry, |
(...skipping 332 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
487 static int const kNoFeedbackSlot = 0; | 482 static int const kNoFeedbackSlot = 0; |
488 | 483 |
489 DISALLOW_COPY_AND_ASSIGN(BytecodeArrayBuilder); | 484 DISALLOW_COPY_AND_ASSIGN(BytecodeArrayBuilder); |
490 }; | 485 }; |
491 | 486 |
492 } // namespace interpreter | 487 } // namespace interpreter |
493 } // namespace internal | 488 } // namespace internal |
494 } // namespace v8 | 489 } // namespace v8 |
495 | 490 |
496 #endif // V8_INTERPRETER_BYTECODE_ARRAY_BUILDER_H_ | 491 #endif // V8_INTERPRETER_BYTECODE_ARRAY_BUILDER_H_ |
OLD | NEW |