OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 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_COMPILER_INSTRUCTION_H_ | 5 #ifndef V8_COMPILER_INSTRUCTION_H_ |
6 #define V8_COMPILER_INSTRUCTION_H_ | 6 #define V8_COMPILER_INSTRUCTION_H_ |
7 | 7 |
8 #include <deque> | 8 #include <deque> |
9 #include <iosfwd> | 9 #include <iosfwd> |
10 #include <map> | 10 #include <map> |
(...skipping 879 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
890 reference_map_ = nullptr; | 890 reference_map_ = nullptr; |
891 } | 891 } |
892 | 892 |
893 bool IsNop() const { return arch_opcode() == kArchNop; } | 893 bool IsNop() const { return arch_opcode() == kArchNop; } |
894 | 894 |
895 bool IsDeoptimizeCall() const { | 895 bool IsDeoptimizeCall() const { |
896 return arch_opcode() == ArchOpcode::kArchDeoptimize || | 896 return arch_opcode() == ArchOpcode::kArchDeoptimize || |
897 FlagsModeField::decode(opcode()) == kFlags_deoptimize; | 897 FlagsModeField::decode(opcode()) == kFlags_deoptimize; |
898 } | 898 } |
899 | 899 |
| 900 bool IsTrap() const { |
| 901 return FlagsModeField::decode(opcode()) == kFlags_trap; |
| 902 } |
| 903 |
900 bool IsJump() const { return arch_opcode() == ArchOpcode::kArchJmp; } | 904 bool IsJump() const { return arch_opcode() == ArchOpcode::kArchJmp; } |
901 bool IsRet() const { return arch_opcode() == ArchOpcode::kArchRet; } | 905 bool IsRet() const { return arch_opcode() == ArchOpcode::kArchRet; } |
902 bool IsTailCall() const { | 906 bool IsTailCall() const { |
903 return arch_opcode() == ArchOpcode::kArchTailCallCodeObject || | 907 return arch_opcode() == ArchOpcode::kArchTailCallCodeObject || |
904 arch_opcode() == ArchOpcode::kArchTailCallCodeObjectFromJSFunction || | 908 arch_opcode() == ArchOpcode::kArchTailCallCodeObjectFromJSFunction || |
905 arch_opcode() == ArchOpcode::kArchTailCallJSFunctionFromJSFunction || | 909 arch_opcode() == ArchOpcode::kArchTailCallJSFunctionFromJSFunction || |
906 arch_opcode() == ArchOpcode::kArchTailCallAddress; | 910 arch_opcode() == ArchOpcode::kArchTailCallAddress; |
907 } | 911 } |
908 bool IsThrow() const { | 912 bool IsThrow() const { |
909 return arch_opcode() == ArchOpcode::kArchThrowTerminator; | 913 return arch_opcode() == ArchOpcode::kArchThrowTerminator; |
(...skipping 756 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1666 }; | 1670 }; |
1667 | 1671 |
1668 V8_EXPORT_PRIVATE std::ostream& operator<<( | 1672 V8_EXPORT_PRIVATE std::ostream& operator<<( |
1669 std::ostream& os, const PrintableInstructionSequence& code); | 1673 std::ostream& os, const PrintableInstructionSequence& code); |
1670 | 1674 |
1671 } // namespace compiler | 1675 } // namespace compiler |
1672 } // namespace internal | 1676 } // namespace internal |
1673 } // namespace v8 | 1677 } // namespace v8 |
1674 | 1678 |
1675 #endif // V8_COMPILER_INSTRUCTION_H_ | 1679 #endif // V8_COMPILER_INSTRUCTION_H_ |
OLD | NEW |