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 #include "src/compiler/verifier.h" | 5 #include "src/compiler/verifier.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 #include <deque> | 8 #include <deque> |
9 #include <queue> | 9 #include <queue> |
10 #include <sstream> | 10 #include <sstream> |
(...skipping 736 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
747 // (Number, Number) -> Number | 747 // (Number, Number) -> Number |
748 CheckValueInputIs(node, 0, Type::Number()); | 748 CheckValueInputIs(node, 0, Type::Number()); |
749 CheckValueInputIs(node, 1, Type::Number()); | 749 CheckValueInputIs(node, 1, Type::Number()); |
750 CheckUpperIs(node, Type::Number()); | 750 CheckUpperIs(node, Type::Number()); |
751 break; | 751 break; |
752 case IrOpcode::kNumberCeil: | 752 case IrOpcode::kNumberCeil: |
753 case IrOpcode::kNumberFloor: | 753 case IrOpcode::kNumberFloor: |
754 case IrOpcode::kNumberFround: | 754 case IrOpcode::kNumberFround: |
755 case IrOpcode::kNumberAtan: | 755 case IrOpcode::kNumberAtan: |
756 case IrOpcode::kNumberAtanh: | 756 case IrOpcode::kNumberAtanh: |
| 757 case IrOpcode::kNumberCos: |
757 case IrOpcode::kNumberExp: | 758 case IrOpcode::kNumberExp: |
758 case IrOpcode::kNumberExpm1: | 759 case IrOpcode::kNumberExpm1: |
759 case IrOpcode::kNumberLog: | 760 case IrOpcode::kNumberLog: |
760 case IrOpcode::kNumberLog1p: | 761 case IrOpcode::kNumberLog1p: |
761 case IrOpcode::kNumberLog2: | 762 case IrOpcode::kNumberLog2: |
762 case IrOpcode::kNumberLog10: | 763 case IrOpcode::kNumberLog10: |
763 case IrOpcode::kNumberCbrt: | 764 case IrOpcode::kNumberCbrt: |
764 case IrOpcode::kNumberRound: | 765 case IrOpcode::kNumberRound: |
| 766 case IrOpcode::kNumberSin: |
765 case IrOpcode::kNumberSqrt: | 767 case IrOpcode::kNumberSqrt: |
766 case IrOpcode::kNumberTrunc: | 768 case IrOpcode::kNumberTrunc: |
767 // Number -> Number | 769 // Number -> Number |
768 CheckValueInputIs(node, 0, Type::Number()); | 770 CheckValueInputIs(node, 0, Type::Number()); |
769 CheckUpperIs(node, Type::Number()); | 771 CheckUpperIs(node, Type::Number()); |
770 break; | 772 break; |
771 case IrOpcode::kNumberToInt32: | 773 case IrOpcode::kNumberToInt32: |
772 // Number -> Signed32 | 774 // Number -> Signed32 |
773 CheckValueInputIs(node, 0, Type::Number()); | 775 CheckValueInputIs(node, 0, Type::Number()); |
774 CheckUpperIs(node, Type::Signed32()); | 776 CheckUpperIs(node, Type::Signed32()); |
(...skipping 293 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1068 case IrOpcode::kFloat64Neg: | 1070 case IrOpcode::kFloat64Neg: |
1069 case IrOpcode::kFloat64Mul: | 1071 case IrOpcode::kFloat64Mul: |
1070 case IrOpcode::kFloat64Div: | 1072 case IrOpcode::kFloat64Div: |
1071 case IrOpcode::kFloat64Mod: | 1073 case IrOpcode::kFloat64Mod: |
1072 case IrOpcode::kFloat64Max: | 1074 case IrOpcode::kFloat64Max: |
1073 case IrOpcode::kFloat64Min: | 1075 case IrOpcode::kFloat64Min: |
1074 case IrOpcode::kFloat64Abs: | 1076 case IrOpcode::kFloat64Abs: |
1075 case IrOpcode::kFloat64Atan: | 1077 case IrOpcode::kFloat64Atan: |
1076 case IrOpcode::kFloat64Atan2: | 1078 case IrOpcode::kFloat64Atan2: |
1077 case IrOpcode::kFloat64Atanh: | 1079 case IrOpcode::kFloat64Atanh: |
| 1080 case IrOpcode::kFloat64Cos: |
1078 case IrOpcode::kFloat64Exp: | 1081 case IrOpcode::kFloat64Exp: |
1079 case IrOpcode::kFloat64Expm1: | 1082 case IrOpcode::kFloat64Expm1: |
1080 case IrOpcode::kFloat64Log: | 1083 case IrOpcode::kFloat64Log: |
1081 case IrOpcode::kFloat64Log1p: | 1084 case IrOpcode::kFloat64Log1p: |
1082 case IrOpcode::kFloat64Log2: | 1085 case IrOpcode::kFloat64Log2: |
1083 case IrOpcode::kFloat64Log10: | 1086 case IrOpcode::kFloat64Log10: |
1084 case IrOpcode::kFloat64Cbrt: | 1087 case IrOpcode::kFloat64Cbrt: |
| 1088 case IrOpcode::kFloat64Sin: |
1085 case IrOpcode::kFloat64Sqrt: | 1089 case IrOpcode::kFloat64Sqrt: |
1086 case IrOpcode::kFloat32RoundDown: | 1090 case IrOpcode::kFloat32RoundDown: |
1087 case IrOpcode::kFloat64RoundDown: | 1091 case IrOpcode::kFloat64RoundDown: |
1088 case IrOpcode::kFloat32RoundUp: | 1092 case IrOpcode::kFloat32RoundUp: |
1089 case IrOpcode::kFloat64RoundUp: | 1093 case IrOpcode::kFloat64RoundUp: |
1090 case IrOpcode::kFloat32RoundTruncate: | 1094 case IrOpcode::kFloat32RoundTruncate: |
1091 case IrOpcode::kFloat64RoundTruncate: | 1095 case IrOpcode::kFloat64RoundTruncate: |
1092 case IrOpcode::kFloat64RoundTiesAway: | 1096 case IrOpcode::kFloat64RoundTiesAway: |
1093 case IrOpcode::kFloat32RoundTiesEven: | 1097 case IrOpcode::kFloat32RoundTiesEven: |
1094 case IrOpcode::kFloat64RoundTiesEven: | 1098 case IrOpcode::kFloat64RoundTiesEven: |
(...skipping 374 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1469 replacement->op()->EffectOutputCount() > 0); | 1473 replacement->op()->EffectOutputCount() > 0); |
1470 DCHECK(!NodeProperties::IsFrameStateEdge(edge) || | 1474 DCHECK(!NodeProperties::IsFrameStateEdge(edge) || |
1471 replacement->opcode() == IrOpcode::kFrameState); | 1475 replacement->opcode() == IrOpcode::kFrameState); |
1472 } | 1476 } |
1473 | 1477 |
1474 #endif // DEBUG | 1478 #endif // DEBUG |
1475 | 1479 |
1476 } // namespace compiler | 1480 } // namespace compiler |
1477 } // namespace internal | 1481 } // namespace internal |
1478 } // namespace v8 | 1482 } // namespace v8 |
OLD | NEW |