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

Unified Diff: src/compiler/verifier.cc

Issue 2362173003: [turbofan] Improve representation selection for Smi checking. (Closed)
Patch Set: Address comments Created 4 years, 3 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/compiler/typer.cc ('k') | test/unittests/compiler/simplified-operator-reducer-unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/compiler/verifier.cc
diff --git a/src/compiler/verifier.cc b/src/compiler/verifier.cc
index 67467cf990efeb169669b419639541c8e54c4ecf..0f923ea42ae0292cf35d538a856f417edb27d609 100644
--- a/src/compiler/verifier.cc
+++ b/src/compiler/verifier.cc
@@ -1001,6 +1001,13 @@ void Verifier::Visitor::Check(Node* node) {
CheckValueInputIs(node, 1, Type::Unsigned31());
CheckTypeIs(node, Type::Unsigned31());
break;
+ case IrOpcode::kCheckHeapObject:
+ CheckValueInputIs(node, 0, Type::Any());
+ break;
+ case IrOpcode::kCheckIf:
+ CheckValueInputIs(node, 0, Type::Boolean());
+ CheckNotTyped(node);
+ break;
case IrOpcode::kCheckMaps:
// (Any, Internal, ..., Internal) -> Any
CheckValueInputIs(node, 0, Type::Any());
@@ -1013,19 +1020,12 @@ void Verifier::Visitor::Check(Node* node) {
CheckValueInputIs(node, 0, Type::Any());
CheckTypeIs(node, Type::Number());
break;
- case IrOpcode::kCheckString:
- CheckValueInputIs(node, 0, Type::Any());
- CheckTypeIs(node, Type::String());
- break;
- case IrOpcode::kCheckIf:
- CheckValueInputIs(node, 0, Type::Boolean());
- CheckNotTyped(node);
- break;
- case IrOpcode::kCheckTaggedSigned:
+ case IrOpcode::kCheckSmi:
CheckValueInputIs(node, 0, Type::Any());
break;
- case IrOpcode::kCheckTaggedPointer:
+ case IrOpcode::kCheckString:
CheckValueInputIs(node, 0, Type::Any());
+ CheckTypeIs(node, Type::String());
break;
case IrOpcode::kCheckedInt32Add:
@@ -1035,11 +1035,14 @@ void Verifier::Visitor::Check(Node* node) {
case IrOpcode::kCheckedUint32Div:
case IrOpcode::kCheckedUint32Mod:
case IrOpcode::kCheckedInt32Mul:
+ case IrOpcode::kCheckedInt32ToTaggedSigned:
case IrOpcode::kCheckedUint32ToInt32:
+ case IrOpcode::kCheckedUint32ToTaggedSigned:
case IrOpcode::kCheckedFloat64ToInt32:
case IrOpcode::kCheckedTaggedSignedToInt32:
case IrOpcode::kCheckedTaggedToInt32:
case IrOpcode::kCheckedTaggedToFloat64:
+ case IrOpcode::kCheckedTaggedToTaggedSigned:
case IrOpcode::kCheckedTruncateTaggedToWord32:
break;
« no previous file with comments | « src/compiler/typer.cc ('k') | test/unittests/compiler/simplified-operator-reducer-unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698