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 737 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
748 CheckValueInputIs(node, 1, Type::Number()); | 748 CheckValueInputIs(node, 1, Type::Number()); |
749 CheckUpperIs(node, Type::Number()); | 749 CheckUpperIs(node, Type::Number()); |
750 break; | 750 break; |
751 case IrOpcode::kNumberAbs: | 751 case IrOpcode::kNumberAbs: |
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::kNumberCos: |
| 758 case IrOpcode::kNumberCosh: |
758 case IrOpcode::kNumberExp: | 759 case IrOpcode::kNumberExp: |
759 case IrOpcode::kNumberExpm1: | 760 case IrOpcode::kNumberExpm1: |
760 case IrOpcode::kNumberLog: | 761 case IrOpcode::kNumberLog: |
761 case IrOpcode::kNumberLog1p: | 762 case IrOpcode::kNumberLog1p: |
762 case IrOpcode::kNumberLog2: | 763 case IrOpcode::kNumberLog2: |
763 case IrOpcode::kNumberLog10: | 764 case IrOpcode::kNumberLog10: |
764 case IrOpcode::kNumberCbrt: | 765 case IrOpcode::kNumberCbrt: |
765 case IrOpcode::kNumberRound: | 766 case IrOpcode::kNumberRound: |
766 case IrOpcode::kNumberSin: | 767 case IrOpcode::kNumberSin: |
| 768 case IrOpcode::kNumberSinh: |
767 case IrOpcode::kNumberSqrt: | 769 case IrOpcode::kNumberSqrt: |
768 case IrOpcode::kNumberTan: | 770 case IrOpcode::kNumberTan: |
| 771 case IrOpcode::kNumberTanh: |
769 case IrOpcode::kNumberTrunc: | 772 case IrOpcode::kNumberTrunc: |
770 // Number -> Number | 773 // Number -> Number |
771 CheckValueInputIs(node, 0, Type::Number()); | 774 CheckValueInputIs(node, 0, Type::Number()); |
772 CheckUpperIs(node, Type::Number()); | 775 CheckUpperIs(node, Type::Number()); |
773 break; | 776 break; |
774 case IrOpcode::kNumberToInt32: | 777 case IrOpcode::kNumberToInt32: |
775 // Number -> Signed32 | 778 // Number -> Signed32 |
776 CheckValueInputIs(node, 0, Type::Number()); | 779 CheckValueInputIs(node, 0, Type::Number()); |
777 CheckUpperIs(node, Type::Signed32()); | 780 CheckUpperIs(node, Type::Signed32()); |
778 break; | 781 break; |
(...skipping 308 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1087 case IrOpcode::kFloat64Div: | 1090 case IrOpcode::kFloat64Div: |
1088 case IrOpcode::kFloat64Mod: | 1091 case IrOpcode::kFloat64Mod: |
1089 case IrOpcode::kFloat64Max: | 1092 case IrOpcode::kFloat64Max: |
1090 case IrOpcode::kFloat64Min: | 1093 case IrOpcode::kFloat64Min: |
1091 case IrOpcode::kFloat64Abs: | 1094 case IrOpcode::kFloat64Abs: |
1092 case IrOpcode::kFloat64Atan: | 1095 case IrOpcode::kFloat64Atan: |
1093 case IrOpcode::kFloat64Atan2: | 1096 case IrOpcode::kFloat64Atan2: |
1094 case IrOpcode::kFloat64Atanh: | 1097 case IrOpcode::kFloat64Atanh: |
1095 case IrOpcode::kFloat64Cbrt: | 1098 case IrOpcode::kFloat64Cbrt: |
1096 case IrOpcode::kFloat64Cos: | 1099 case IrOpcode::kFloat64Cos: |
| 1100 case IrOpcode::kFloat64Cosh: |
1097 case IrOpcode::kFloat64Exp: | 1101 case IrOpcode::kFloat64Exp: |
1098 case IrOpcode::kFloat64Expm1: | 1102 case IrOpcode::kFloat64Expm1: |
1099 case IrOpcode::kFloat64Log: | 1103 case IrOpcode::kFloat64Log: |
1100 case IrOpcode::kFloat64Log1p: | 1104 case IrOpcode::kFloat64Log1p: |
1101 case IrOpcode::kFloat64Log10: | 1105 case IrOpcode::kFloat64Log10: |
1102 case IrOpcode::kFloat64Log2: | 1106 case IrOpcode::kFloat64Log2: |
1103 case IrOpcode::kFloat64Pow: | 1107 case IrOpcode::kFloat64Pow: |
1104 case IrOpcode::kFloat64Sin: | 1108 case IrOpcode::kFloat64Sin: |
| 1109 case IrOpcode::kFloat64Sinh: |
1105 case IrOpcode::kFloat64Sqrt: | 1110 case IrOpcode::kFloat64Sqrt: |
1106 case IrOpcode::kFloat64Tan: | 1111 case IrOpcode::kFloat64Tan: |
| 1112 case IrOpcode::kFloat64Tanh: |
1107 case IrOpcode::kFloat32RoundDown: | 1113 case IrOpcode::kFloat32RoundDown: |
1108 case IrOpcode::kFloat64RoundDown: | 1114 case IrOpcode::kFloat64RoundDown: |
1109 case IrOpcode::kFloat32RoundUp: | 1115 case IrOpcode::kFloat32RoundUp: |
1110 case IrOpcode::kFloat64RoundUp: | 1116 case IrOpcode::kFloat64RoundUp: |
1111 case IrOpcode::kFloat32RoundTruncate: | 1117 case IrOpcode::kFloat32RoundTruncate: |
1112 case IrOpcode::kFloat64RoundTruncate: | 1118 case IrOpcode::kFloat64RoundTruncate: |
1113 case IrOpcode::kFloat64RoundTiesAway: | 1119 case IrOpcode::kFloat64RoundTiesAway: |
1114 case IrOpcode::kFloat32RoundTiesEven: | 1120 case IrOpcode::kFloat32RoundTiesEven: |
1115 case IrOpcode::kFloat64RoundTiesEven: | 1121 case IrOpcode::kFloat64RoundTiesEven: |
1116 case IrOpcode::kFloat64Equal: | 1122 case IrOpcode::kFloat64Equal: |
(...skipping 373 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1490 replacement->op()->EffectOutputCount() > 0); | 1496 replacement->op()->EffectOutputCount() > 0); |
1491 DCHECK(!NodeProperties::IsFrameStateEdge(edge) || | 1497 DCHECK(!NodeProperties::IsFrameStateEdge(edge) || |
1492 replacement->opcode() == IrOpcode::kFrameState); | 1498 replacement->opcode() == IrOpcode::kFrameState); |
1493 } | 1499 } |
1494 | 1500 |
1495 #endif // DEBUG | 1501 #endif // DEBUG |
1496 | 1502 |
1497 } // namespace compiler | 1503 } // namespace compiler |
1498 } // namespace internal | 1504 } // namespace internal |
1499 } // namespace v8 | 1505 } // namespace v8 |
OLD | NEW |