Index: src/compiler/typer.cc |
diff --git a/src/compiler/typer.cc b/src/compiler/typer.cc |
index 2f784f7af8f045a97621ceeffe2f38b1fc7b9307..ee0b7c1d43b6980baed6f9c4a4f291e00f3b922d 100644 |
--- a/src/compiler/typer.cc |
+++ b/src/compiler/typer.cc |
@@ -97,6 +97,7 @@ |
COMMON_OP_LIST(DECLARE_CASE) |
SIMPLIFIED_OP_LIST(DECLARE_CASE) |
MACHINE_OP_LIST(DECLARE_CASE) |
+ MACHINE_SIMD_OP_LIST(DECLARE_CASE) |
JS_SIMPLE_UNOP_LIST(DECLARE_CASE) |
JS_OBJECT_OP_LIST(DECLARE_CASE) |
JS_CONTEXT_OP_LIST(DECLARE_CASE) |
@@ -143,6 +144,7 @@ |
COMMON_OP_LIST(DECLARE_CASE) |
SIMPLIFIED_OP_LIST(DECLARE_CASE) |
MACHINE_OP_LIST(DECLARE_CASE) |
+ MACHINE_SIMD_OP_LIST(DECLARE_CASE) |
JS_SIMPLE_UNOP_LIST(DECLARE_CASE) |
JS_OBJECT_OP_LIST(DECLARE_CASE) |
JS_CONTEXT_OP_LIST(DECLARE_CASE) |
@@ -2519,8 +2521,24 @@ |
Type* Typer::Visitor::TypeWord32PairSar(Node* node) { return Type::Internal(); } |
+// SIMD type methods. |
+ |
+#define SIMD_RETURN_SIMD(Name) \ |
+ Type* Typer::Visitor::Type##Name(Node* node) { return Type::Simd(); } |
+MACHINE_SIMD_RETURN_SIMD_OP_LIST(SIMD_RETURN_SIMD) |
+#undef SIMD_RETURN_SIMD |
+ |
+#define SIMD_RETURN_NUM(Name) \ |
+ Type* Typer::Visitor::Type##Name(Node* node) { return Type::Number(); } |
+MACHINE_SIMD_RETURN_NUM_OP_LIST(SIMD_RETURN_NUM) |
+#undef SIMD_RETURN_NUM |
+ |
+#define SIMD_RETURN_BOOL(Name) \ |
+ Type* Typer::Visitor::Type##Name(Node* node) { return Type::Boolean(); } |
+MACHINE_SIMD_RETURN_BOOL_OP_LIST(SIMD_RETURN_BOOL) |
+#undef SIMD_RETURN_BOOL |
+ |
// Heap constants. |
- |
Type* Typer::Visitor::TypeConstant(Handle<Object> value) { |
if (value->IsJSTypedArray()) { |