Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(441)

Side by Side Diff: src/interpreter/bytecode-array-builder.cc

Issue 2557593004: [ignition] desugar GetIterator() via bytecode rather than via AST (Closed)
Patch Set: Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 #include "src/interpreter/bytecode-array-builder.h" 5 #include "src/interpreter/bytecode-array-builder.h"
6 6
7 #include "src/globals.h" 7 #include "src/globals.h"
8 #include "src/interpreter/bytecode-array-writer.h" 8 #include "src/interpreter/bytecode-array-writer.h"
9 #include "src/interpreter/bytecode-dead-code-optimizer.h" 9 #include "src/interpreter/bytecode-dead-code-optimizer.h"
10 #include "src/interpreter/bytecode-label.h" 10 #include "src/interpreter/bytecode-label.h"
(...skipping 707 matching lines...) Expand 10 before | Expand all | Expand 10 after
718 OutputJumpIfUndefined(label, 0); 718 OutputJumpIfUndefined(label, 0);
719 return *this; 719 return *this;
720 } 720 }
721 721
722 BytecodeArrayBuilder& BytecodeArrayBuilder::JumpIfNotHole( 722 BytecodeArrayBuilder& BytecodeArrayBuilder::JumpIfNotHole(
723 BytecodeLabel* label) { 723 BytecodeLabel* label) {
724 OutputJumpIfNotHole(label, 0); 724 OutputJumpIfNotHole(label, 0);
725 return *this; 725 return *this;
726 } 726 }
727 727
728 BytecodeArrayBuilder& BytecodeArrayBuilder::JumpIfJSReceiver(
729 BytecodeLabel* label) {
730 OutputJumpIfJSReceiver(label, 0);
731 return *this;
732 }
733
728 BytecodeArrayBuilder& BytecodeArrayBuilder::JumpLoop(BytecodeLabel* label, 734 BytecodeArrayBuilder& BytecodeArrayBuilder::JumpLoop(BytecodeLabel* label,
729 int loop_depth) { 735 int loop_depth) {
730 OutputJumpLoop(label, 0, loop_depth); 736 OutputJumpLoop(label, 0, loop_depth);
731 return *this; 737 return *this;
732 } 738 }
733 739
734 BytecodeArrayBuilder& BytecodeArrayBuilder::StackCheck(int position) { 740 BytecodeArrayBuilder& BytecodeArrayBuilder::StackCheck(int position) {
735 if (position != kNoSourcePosition) { 741 if (position != kNoSourcePosition) {
736 // We need to attach a non-breakable source position to a stack 742 // We need to attach a non-breakable source position to a stack
737 // check, so we simply add it as expression position. There can be 743 // check, so we simply add it as expression position. There can be
(...skipping 277 matching lines...) Expand 10 before | Expand all | Expand 10 after
1015 RegisterList reg_list) { 1021 RegisterList reg_list) {
1016 DCHECK(RegisterListIsValid(reg_list)); 1022 DCHECK(RegisterListIsValid(reg_list));
1017 if (register_optimizer_) 1023 if (register_optimizer_)
1018 register_optimizer_->PrepareOutputRegisterList(reg_list); 1024 register_optimizer_->PrepareOutputRegisterList(reg_list);
1019 return static_cast<uint32_t>(reg_list.first_register().ToOperand()); 1025 return static_cast<uint32_t>(reg_list.first_register().ToOperand());
1020 } 1026 }
1021 1027
1022 } // namespace interpreter 1028 } // namespace interpreter
1023 } // namespace internal 1029 } // namespace internal
1024 } // namespace v8 1030 } // namespace v8
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698