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/typer.h" | 5 #include "src/compiler/typer.h" |
6 | 6 |
7 #include "src/base/flags.h" | 7 #include "src/base/flags.h" |
8 #include "src/bootstrapper.h" | 8 #include "src/bootstrapper.h" |
9 #include "src/compilation-dependencies.h" | 9 #include "src/compilation-dependencies.h" |
10 #include "src/compiler/common-operator.h" | 10 #include "src/compiler/common-operator.h" |
(...skipping 2042 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2053 Type* Typer::Visitor::TypeInt32Sub(Node* node) { return Type::Integral32(); } | 2053 Type* Typer::Visitor::TypeInt32Sub(Node* node) { return Type::Integral32(); } |
2054 | 2054 |
2055 | 2055 |
2056 Type* Typer::Visitor::TypeInt32SubWithOverflow(Node* node) { | 2056 Type* Typer::Visitor::TypeInt32SubWithOverflow(Node* node) { |
2057 return Type::Internal(); | 2057 return Type::Internal(); |
2058 } | 2058 } |
2059 | 2059 |
2060 | 2060 |
2061 Type* Typer::Visitor::TypeInt32Mul(Node* node) { return Type::Integral32(); } | 2061 Type* Typer::Visitor::TypeInt32Mul(Node* node) { return Type::Integral32(); } |
2062 | 2062 |
| 2063 Type* Typer::Visitor::TypeInt32MulWithOverflow(Node* node) { |
| 2064 return Type::Internal(); |
| 2065 } |
2063 | 2066 |
2064 Type* Typer::Visitor::TypeInt32MulHigh(Node* node) { return Type::Signed32(); } | 2067 Type* Typer::Visitor::TypeInt32MulHigh(Node* node) { return Type::Signed32(); } |
2065 | 2068 |
2066 | 2069 |
2067 Type* Typer::Visitor::TypeInt32Div(Node* node) { return Type::Integral32(); } | 2070 Type* Typer::Visitor::TypeInt32Div(Node* node) { return Type::Integral32(); } |
2068 | 2071 |
2069 | 2072 |
2070 Type* Typer::Visitor::TypeInt32Mod(Node* node) { return Type::Integral32(); } | 2073 Type* Typer::Visitor::TypeInt32Mod(Node* node) { return Type::Integral32(); } |
2071 | 2074 |
2072 | 2075 |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2108 Type* Typer::Visitor::TypeInt64Sub(Node* node) { return Type::Internal(); } | 2111 Type* Typer::Visitor::TypeInt64Sub(Node* node) { return Type::Internal(); } |
2109 | 2112 |
2110 | 2113 |
2111 Type* Typer::Visitor::TypeInt64SubWithOverflow(Node* node) { | 2114 Type* Typer::Visitor::TypeInt64SubWithOverflow(Node* node) { |
2112 return Type::Internal(); | 2115 return Type::Internal(); |
2113 } | 2116 } |
2114 | 2117 |
2115 | 2118 |
2116 Type* Typer::Visitor::TypeInt64Mul(Node* node) { return Type::Internal(); } | 2119 Type* Typer::Visitor::TypeInt64Mul(Node* node) { return Type::Internal(); } |
2117 | 2120 |
2118 | |
2119 Type* Typer::Visitor::TypeInt64Div(Node* node) { return Type::Internal(); } | 2121 Type* Typer::Visitor::TypeInt64Div(Node* node) { return Type::Internal(); } |
2120 | 2122 |
2121 | 2123 |
2122 Type* Typer::Visitor::TypeInt64Mod(Node* node) { return Type::Internal(); } | 2124 Type* Typer::Visitor::TypeInt64Mod(Node* node) { return Type::Internal(); } |
2123 | 2125 |
2124 | 2126 |
2125 Type* Typer::Visitor::TypeInt64LessThan(Node* node) { return Type::Boolean(); } | 2127 Type* Typer::Visitor::TypeInt64LessThan(Node* node) { return Type::Boolean(); } |
2126 | 2128 |
2127 | 2129 |
2128 Type* Typer::Visitor::TypeInt64LessThanOrEqual(Node* node) { | 2130 Type* Typer::Visitor::TypeInt64LessThanOrEqual(Node* node) { |
(...skipping 441 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2570 } | 2572 } |
2571 if (Type::IsInteger(*value)) { | 2573 if (Type::IsInteger(*value)) { |
2572 return Type::Range(value->Number(), value->Number(), zone()); | 2574 return Type::Range(value->Number(), value->Number(), zone()); |
2573 } | 2575 } |
2574 return Type::Constant(value, zone()); | 2576 return Type::Constant(value, zone()); |
2575 } | 2577 } |
2576 | 2578 |
2577 } // namespace compiler | 2579 } // namespace compiler |
2578 } // namespace internal | 2580 } // namespace internal |
2579 } // namespace v8 | 2581 } // namespace v8 |
OLD | NEW |