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 375 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
386 // previous pending message in the accumulator. | 386 // previous pending message in the accumulator. |
387 BytecodeArrayBuilder& SetPendingMessage(); | 387 BytecodeArrayBuilder& SetPendingMessage(); |
388 | 388 |
389 BytecodeArrayBuilder& Throw(); | 389 BytecodeArrayBuilder& Throw(); |
390 BytecodeArrayBuilder& ReThrow(); | 390 BytecodeArrayBuilder& ReThrow(); |
391 BytecodeArrayBuilder& Return(); | 391 BytecodeArrayBuilder& Return(); |
392 | 392 |
393 // Debugger. | 393 // Debugger. |
394 BytecodeArrayBuilder& Debugger(); | 394 BytecodeArrayBuilder& Debugger(); |
395 | 395 |
| 396 // Increment the block counter at the given slot. Used for block code coverage |
| 397 // (go/v8-designdoc-block-code-coverage). |
| 398 BytecodeArrayBuilder& IncBlockCounter(int slot); |
| 399 |
396 // Complex flow control. | 400 // Complex flow control. |
397 BytecodeArrayBuilder& ForInPrepare(Register receiver, | 401 BytecodeArrayBuilder& ForInPrepare(Register receiver, |
398 RegisterList cache_info_triple); | 402 RegisterList cache_info_triple); |
399 BytecodeArrayBuilder& ForInContinue(Register index, Register cache_length); | 403 BytecodeArrayBuilder& ForInContinue(Register index, Register cache_length); |
400 BytecodeArrayBuilder& ForInNext(Register receiver, Register index, | 404 BytecodeArrayBuilder& ForInNext(Register receiver, Register index, |
401 RegisterList cache_type_array_pair, | 405 RegisterList cache_type_array_pair, |
402 int feedback_slot); | 406 int feedback_slot); |
403 BytecodeArrayBuilder& ForInStep(Register index); | 407 BytecodeArrayBuilder& ForInStep(Register index); |
404 | 408 |
405 // Generators. | 409 // Generators. |
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
566 }; | 570 }; |
567 | 571 |
568 V8_EXPORT_PRIVATE std::ostream& operator<<( | 572 V8_EXPORT_PRIVATE std::ostream& operator<<( |
569 std::ostream& os, const BytecodeArrayBuilder::ToBooleanMode& mode); | 573 std::ostream& os, const BytecodeArrayBuilder::ToBooleanMode& mode); |
570 | 574 |
571 } // namespace interpreter | 575 } // namespace interpreter |
572 } // namespace internal | 576 } // namespace internal |
573 } // namespace v8 | 577 } // namespace v8 |
574 | 578 |
575 #endif // V8_INTERPRETER_BYTECODE_ARRAY_BUILDER_H_ | 579 #endif // V8_INTERPRETER_BYTECODE_ARRAY_BUILDER_H_ |
OLD | NEW |