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

Side by Side Diff: src/compiler/verifier.cc

Issue 2060743002: [builtins] Introduce proper Float64Log1p operator. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@Math_Log
Patch Set: REBASE Created 4 years, 6 months 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 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 723 matching lines...) Expand 10 before | Expand all | Expand 10 after
734 CheckUpperIs(node, Type::Signed32()); 734 CheckUpperIs(node, Type::Signed32());
735 break; 735 break;
736 case IrOpcode::kNumberClz32: 736 case IrOpcode::kNumberClz32:
737 // Unsigned32 -> Unsigned32 737 // Unsigned32 -> Unsigned32
738 CheckValueInputIs(node, 0, Type::Unsigned32()); 738 CheckValueInputIs(node, 0, Type::Unsigned32());
739 CheckUpperIs(node, Type::Unsigned32()); 739 CheckUpperIs(node, Type::Unsigned32());
740 break; 740 break;
741 case IrOpcode::kNumberCeil: 741 case IrOpcode::kNumberCeil:
742 case IrOpcode::kNumberFloor: 742 case IrOpcode::kNumberFloor:
743 case IrOpcode::kNumberLog: 743 case IrOpcode::kNumberLog:
744 case IrOpcode::kNumberLog1p:
744 case IrOpcode::kNumberRound: 745 case IrOpcode::kNumberRound:
745 case IrOpcode::kNumberTrunc: 746 case IrOpcode::kNumberTrunc:
746 // Number -> Number 747 // Number -> Number
747 CheckValueInputIs(node, 0, Type::Number()); 748 CheckValueInputIs(node, 0, Type::Number());
748 CheckUpperIs(node, Type::Number()); 749 CheckUpperIs(node, Type::Number());
749 break; 750 break;
750 case IrOpcode::kNumberToInt32: 751 case IrOpcode::kNumberToInt32:
751 // Number -> Signed32 752 // Number -> Signed32
752 CheckValueInputIs(node, 0, Type::NumberOrUndefined()); 753 CheckValueInputIs(node, 0, Type::NumberOrUndefined());
753 CheckUpperIs(node, Type::Signed32()); 754 CheckUpperIs(node, Type::Signed32());
(...skipping 277 matching lines...) Expand 10 before | Expand all | Expand 10 after
1031 case IrOpcode::kFloat64Sub: 1032 case IrOpcode::kFloat64Sub:
1032 case IrOpcode::kFloat64SubPreserveNan: 1033 case IrOpcode::kFloat64SubPreserveNan:
1033 case IrOpcode::kFloat64Neg: 1034 case IrOpcode::kFloat64Neg:
1034 case IrOpcode::kFloat64Mul: 1035 case IrOpcode::kFloat64Mul:
1035 case IrOpcode::kFloat64Div: 1036 case IrOpcode::kFloat64Div:
1036 case IrOpcode::kFloat64Mod: 1037 case IrOpcode::kFloat64Mod:
1037 case IrOpcode::kFloat64Max: 1038 case IrOpcode::kFloat64Max:
1038 case IrOpcode::kFloat64Min: 1039 case IrOpcode::kFloat64Min:
1039 case IrOpcode::kFloat64Abs: 1040 case IrOpcode::kFloat64Abs:
1040 case IrOpcode::kFloat64Log: 1041 case IrOpcode::kFloat64Log:
1042 case IrOpcode::kFloat64Log1p:
1041 case IrOpcode::kFloat64Sqrt: 1043 case IrOpcode::kFloat64Sqrt:
1042 case IrOpcode::kFloat32RoundDown: 1044 case IrOpcode::kFloat32RoundDown:
1043 case IrOpcode::kFloat64RoundDown: 1045 case IrOpcode::kFloat64RoundDown:
1044 case IrOpcode::kFloat32RoundUp: 1046 case IrOpcode::kFloat32RoundUp:
1045 case IrOpcode::kFloat64RoundUp: 1047 case IrOpcode::kFloat64RoundUp:
1046 case IrOpcode::kFloat32RoundTruncate: 1048 case IrOpcode::kFloat32RoundTruncate:
1047 case IrOpcode::kFloat64RoundTruncate: 1049 case IrOpcode::kFloat64RoundTruncate:
1048 case IrOpcode::kFloat64RoundTiesAway: 1050 case IrOpcode::kFloat64RoundTiesAway:
1049 case IrOpcode::kFloat32RoundTiesEven: 1051 case IrOpcode::kFloat32RoundTiesEven:
1050 case IrOpcode::kFloat64RoundTiesEven: 1052 case IrOpcode::kFloat64RoundTiesEven:
(...skipping 373 matching lines...) Expand 10 before | Expand all | Expand 10 after
1424 replacement->op()->EffectOutputCount() > 0); 1426 replacement->op()->EffectOutputCount() > 0);
1425 DCHECK(!NodeProperties::IsFrameStateEdge(edge) || 1427 DCHECK(!NodeProperties::IsFrameStateEdge(edge) ||
1426 replacement->opcode() == IrOpcode::kFrameState); 1428 replacement->opcode() == IrOpcode::kFrameState);
1427 } 1429 }
1428 1430
1429 #endif // DEBUG 1431 #endif // DEBUG
1430 1432
1431 } // namespace compiler 1433 } // namespace compiler
1432 } // namespace internal 1434 } // namespace internal
1433 } // namespace v8 1435 } // namespace v8
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698