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