Index: src/compiler/typer.cc |
diff --git a/src/compiler/typer.cc b/src/compiler/typer.cc |
index 25597eec652c6b258e68822b687cc56eaebcc642..e11730e6e58a695f14608e7b247179d4e4e92bcb 100644 |
--- a/src/compiler/typer.cc |
+++ b/src/compiler/typer.cc |
@@ -1506,6 +1506,11 @@ Bounds Typer::Visitor::TypeJSCallRuntime(Node* node) { |
case Runtime::kInlineIsFunction: |
case Runtime::kInlineIsRegExp: |
return Bounds(Type::None(zone()), Type::Boolean(zone())); |
+ case Runtime::kInlineOptimizedDoubleLo: |
+ case Runtime::kInlineOptimizedDoubleHi: |
+ return Bounds(Type::None(zone()), Type::Signed32()); |
+ case Runtime::kInlineOptimizedConstructDouble: |
+ return Bounds(Type::None(zone()), Type::Number()); |
default: |
break; |
} |
@@ -2098,6 +2103,26 @@ Bounds Typer::Visitor::TypeFloat64RoundTiesAway(Node* node) { |
} |
+Bounds Typer::Visitor::TypeFloat64ExtractLowWord32(Node* node) { |
+ return Bounds(Type::Signed32()); |
+} |
+ |
+ |
+Bounds Typer::Visitor::TypeFloat64ExtractHighWord32(Node* node) { |
+ return Bounds(Type::Signed32()); |
+} |
+ |
+ |
+Bounds Typer::Visitor::TypeFloat64InsertLowWord32(Node* node) { |
+ return Bounds(Type::Number()); |
+} |
+ |
+ |
+Bounds Typer::Visitor::TypeFloat64InsertHighWord32(Node* node) { |
+ return Bounds(Type::Number()); |
+} |
+ |
+ |
Bounds Typer::Visitor::TypeLoadStackPointer(Node* node) { |
return Bounds(Type::Internal()); |
} |