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_BYTECODES_H_ | 5 #ifndef V8_INTERPRETER_BYTECODES_H_ |
6 #define V8_INTERPRETER_BYTECODES_H_ | 6 #define V8_INTERPRETER_BYTECODES_H_ |
7 | 7 |
8 #include <cstdint> | 8 #include <cstdint> |
9 #include <iosfwd> | 9 #include <iosfwd> |
10 #include <string> | 10 #include <string> |
(...skipping 255 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
266 V(JumpIfToBooleanTrue, AccumulatorUse::kRead, OperandType::kImm) \ | 266 V(JumpIfToBooleanTrue, AccumulatorUse::kRead, OperandType::kImm) \ |
267 V(JumpIfToBooleanTrueConstant, AccumulatorUse::kRead, OperandType::kIdx) \ | 267 V(JumpIfToBooleanTrueConstant, AccumulatorUse::kRead, OperandType::kIdx) \ |
268 V(JumpIfToBooleanFalse, AccumulatorUse::kRead, OperandType::kImm) \ | 268 V(JumpIfToBooleanFalse, AccumulatorUse::kRead, OperandType::kImm) \ |
269 V(JumpIfToBooleanFalseConstant, AccumulatorUse::kRead, OperandType::kIdx) \ | 269 V(JumpIfToBooleanFalseConstant, AccumulatorUse::kRead, OperandType::kIdx) \ |
270 V(JumpIfNull, AccumulatorUse::kRead, OperandType::kImm) \ | 270 V(JumpIfNull, AccumulatorUse::kRead, OperandType::kImm) \ |
271 V(JumpIfNullConstant, AccumulatorUse::kRead, OperandType::kIdx) \ | 271 V(JumpIfNullConstant, AccumulatorUse::kRead, OperandType::kIdx) \ |
272 V(JumpIfUndefined, AccumulatorUse::kRead, OperandType::kImm) \ | 272 V(JumpIfUndefined, AccumulatorUse::kRead, OperandType::kImm) \ |
273 V(JumpIfUndefinedConstant, AccumulatorUse::kRead, OperandType::kIdx) \ | 273 V(JumpIfUndefinedConstant, AccumulatorUse::kRead, OperandType::kIdx) \ |
274 V(JumpIfNotHole, AccumulatorUse::kRead, OperandType::kImm) \ | 274 V(JumpIfNotHole, AccumulatorUse::kRead, OperandType::kImm) \ |
275 V(JumpIfNotHoleConstant, AccumulatorUse::kRead, OperandType::kIdx) \ | 275 V(JumpIfNotHoleConstant, AccumulatorUse::kRead, OperandType::kIdx) \ |
| 276 V(JumpLoop, AccumulatorUse::kNone, OperandType::kImm, OperandType::kImm) \ |
276 \ | 277 \ |
277 /* Complex flow control For..in */ \ | 278 /* Complex flow control For..in */ \ |
278 V(ForInPrepare, AccumulatorUse::kNone, OperandType::kReg, \ | 279 V(ForInPrepare, AccumulatorUse::kNone, OperandType::kReg, \ |
279 OperandType::kRegOutTriple) \ | 280 OperandType::kRegOutTriple) \ |
280 V(ForInContinue, AccumulatorUse::kWrite, OperandType::kReg, \ | 281 V(ForInContinue, AccumulatorUse::kWrite, OperandType::kReg, \ |
281 OperandType::kReg) \ | 282 OperandType::kReg) \ |
282 V(ForInNext, AccumulatorUse::kWrite, OperandType::kReg, OperandType::kReg, \ | 283 V(ForInNext, AccumulatorUse::kWrite, OperandType::kReg, OperandType::kReg, \ |
283 OperandType::kRegPair, OperandType::kIdx) \ | 284 OperandType::kRegPair, OperandType::kIdx) \ |
284 V(ForInStep, AccumulatorUse::kWrite, OperandType::kReg) \ | 285 V(ForInStep, AccumulatorUse::kWrite, OperandType::kReg) \ |
285 \ | 286 \ |
286 /* Perform a stack guard check */ \ | 287 /* Perform a stack guard check */ \ |
287 V(StackCheck, AccumulatorUse::kNone) \ | 288 V(StackCheck, AccumulatorUse::kNone) \ |
288 \ | 289 \ |
289 /* Perform a check to trigger on-stack replacement */ \ | |
290 V(OsrPoll, AccumulatorUse::kNone, OperandType::kImm) \ | |
291 \ | |
292 /* Non-local flow control */ \ | 290 /* Non-local flow control */ \ |
293 V(Throw, AccumulatorUse::kRead) \ | 291 V(Throw, AccumulatorUse::kRead) \ |
294 V(ReThrow, AccumulatorUse::kRead) \ | 292 V(ReThrow, AccumulatorUse::kRead) \ |
295 V(Return, AccumulatorUse::kRead) \ | 293 V(Return, AccumulatorUse::kRead) \ |
296 \ | 294 \ |
297 /* Generators */ \ | 295 /* Generators */ \ |
298 V(SuspendGenerator, AccumulatorUse::kRead, OperandType::kReg) \ | 296 V(SuspendGenerator, AccumulatorUse::kRead, OperandType::kReg) \ |
299 V(ResumeGenerator, AccumulatorUse::kWrite, OperandType::kReg) \ | 297 V(ResumeGenerator, AccumulatorUse::kWrite, OperandType::kReg) \ |
300 \ | 298 \ |
301 /* Debugger */ \ | 299 /* Debugger */ \ |
(...skipping 294 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
596 std::ostream& operator<<(std::ostream& os, const AccumulatorUse& use); | 594 std::ostream& operator<<(std::ostream& os, const AccumulatorUse& use); |
597 std::ostream& operator<<(std::ostream& os, const OperandScale& operand_scale); | 595 std::ostream& operator<<(std::ostream& os, const OperandScale& operand_scale); |
598 std::ostream& operator<<(std::ostream& os, const OperandSize& operand_size); | 596 std::ostream& operator<<(std::ostream& os, const OperandSize& operand_size); |
599 std::ostream& operator<<(std::ostream& os, const OperandType& operand_type); | 597 std::ostream& operator<<(std::ostream& os, const OperandType& operand_type); |
600 | 598 |
601 } // namespace interpreter | 599 } // namespace interpreter |
602 } // namespace internal | 600 } // namespace internal |
603 } // namespace v8 | 601 } // namespace v8 |
604 | 602 |
605 #endif // V8_INTERPRETER_BYTECODES_H_ | 603 #endif // V8_INTERPRETER_BYTECODES_H_ |
OLD | NEW |