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

Side by Side Diff: src/interpreter/bytecodes.cc

Issue 1422033002: [Interpreter] Add support for for..in. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Comment nits. Created 5 years, 1 month 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/bytecodes.h" 5 #include "src/interpreter/bytecodes.h"
6 6
7 #include "src/frames.h" 7 #include "src/frames.h"
8 #include "src/interpreter/bytecode-traits.h" 8 #include "src/interpreter/bytecode-traits.h"
9 9
10 namespace v8 { 10 namespace v8 {
(...skipping 145 matching lines...) Expand 10 before | Expand all | Expand 10 after
156 UNREACHABLE(); 156 UNREACHABLE();
157 return OperandSize::kNone; 157 return OperandSize::kNone;
158 } 158 }
159 159
160 160
161 // static 161 // static
162 bool Bytecodes::IsJump(Bytecode bytecode) { 162 bool Bytecodes::IsJump(Bytecode bytecode) {
163 return bytecode == Bytecode::kJump || bytecode == Bytecode::kJumpIfTrue || 163 return bytecode == Bytecode::kJump || bytecode == Bytecode::kJumpIfTrue ||
164 bytecode == Bytecode::kJumpIfFalse || 164 bytecode == Bytecode::kJumpIfFalse ||
165 bytecode == Bytecode::kJumpIfToBooleanTrue || 165 bytecode == Bytecode::kJumpIfToBooleanTrue ||
166 bytecode == Bytecode::kJumpIfToBooleanFalse; 166 bytecode == Bytecode::kJumpIfToBooleanFalse ||
167 bytecode == Bytecode::kJumpIfNull ||
168 bytecode == Bytecode::kJumpIfUndefined;
167 } 169 }
168 170
169 171
170 // static 172 // static
171 bool Bytecodes::IsJumpConstant(Bytecode bytecode) { 173 bool Bytecodes::IsJumpConstant(Bytecode bytecode) {
172 return bytecode == Bytecode::kJumpConstant || 174 return bytecode == Bytecode::kJumpConstant ||
173 bytecode == Bytecode::kJumpIfTrueConstant || 175 bytecode == Bytecode::kJumpIfTrueConstant ||
174 bytecode == Bytecode::kJumpIfFalseConstant || 176 bytecode == Bytecode::kJumpIfFalseConstant ||
175 bytecode == Bytecode::kJumpIfToBooleanTrueConstant || 177 bytecode == Bytecode::kJumpIfToBooleanTrueConstant ||
176 bytecode == Bytecode::kJumpIfToBooleanFalseConstant; 178 bytecode == Bytecode::kJumpIfToBooleanFalseConstant ||
179 bytecode == Bytecode::kJumpIfNull ||
180 bytecode == Bytecode::kJumpIfUndefinedConstant;
177 } 181 }
178 182
179 183
180 // static 184 // static
181 uint16_t Bytecodes::ShortOperandFromBytes(const uint8_t* bytes) { 185 uint16_t Bytecodes::ShortOperandFromBytes(const uint8_t* bytes) {
182 return *reinterpret_cast<const uint16_t*>(bytes); 186 return *reinterpret_cast<const uint16_t*>(bytes);
183 } 187 }
184 188
185 189
186 // static 190 // static
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after
347 } 351 }
348 if (reg5.is_valid() && reg4.index() + 1 != reg5.index()) { 352 if (reg5.is_valid() && reg4.index() + 1 != reg5.index()) {
349 return false; 353 return false;
350 } 354 }
351 return true; 355 return true;
352 } 356 }
353 357
354 } // namespace interpreter 358 } // namespace interpreter
355 } // namespace internal 359 } // namespace internal
356 } // namespace v8 360 } // namespace v8
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698