OLD | NEW |
1 // Copyright 2016 the V8 project authors. All rights reserved. | 1 // Copyright 2016 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/typed-optimization.h" | 5 #include "src/compiler/typed-optimization.h" |
6 #include "src/code-factory.h" | 6 #include "src/code-factory.h" |
7 #include "src/compilation-dependencies.h" | 7 #include "src/compilation-dependencies.h" |
8 #include "src/compiler/access-builder.h" | 8 #include "src/compiler/access-builder.h" |
9 #include "src/compiler/js-graph.h" | 9 #include "src/compiler/js-graph.h" |
10 #include "src/compiler/js-operator.h" | 10 #include "src/compiler/js-operator.h" |
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
49 8.80006e+30, 1.4446e+45, 1.12164e+54, 2.48188e+89, | 49 8.80006e+30, 1.4446e+45, 1.12164e+54, 2.48188e+89, |
50 6.71121e+102, 3.074e+112, 4.9699e+152, 5.58383e+166, | 50 6.71121e+102, 3.074e+112, 4.9699e+152, 5.58383e+166, |
51 4.30654e+172, 7.08824e+185, 9.6586e+214, 2.028e+223, | 51 4.30654e+172, 7.08824e+185, 9.6586e+214, 2.028e+223, |
52 6.63277e+243, 1.56192e+261, 1.23202e+269, 5.72883e+289, | 52 6.63277e+243, 1.56192e+261, 1.23202e+269, 5.72883e+289, |
53 8.5798e+290, 1.40256e+294, 1.79769e+308, V8_INFINITY}; | 53 8.5798e+290, 1.40256e+294, 1.79769e+308, V8_INFINITY}; |
54 | 54 |
55 const double kIntegerValues[] = {-V8_INFINITY, INT_MIN, -1000.0, -42.0, | 55 const double kIntegerValues[] = {-V8_INFINITY, INT_MIN, -1000.0, -42.0, |
56 -1.0, 0.0, 1.0, 42.0, | 56 -1.0, 0.0, 1.0, 42.0, |
57 1000.0, INT_MAX, UINT_MAX, V8_INFINITY}; | 57 1000.0, INT_MAX, UINT_MAX, V8_INFINITY}; |
58 | 58 |
59 Type* const kJSTypes[] = {Type::Undefined(), Type::Null(), Type::Boolean(), | |
60 Type::Number(), Type::String(), Type::Object()}; | |
61 | |
62 } // namespace | 59 } // namespace |
63 | 60 |
64 class TypedOptimizationTest : public TypedGraphTest { | 61 class TypedOptimizationTest : public TypedGraphTest { |
65 public: | 62 public: |
66 TypedOptimizationTest() | 63 TypedOptimizationTest() |
67 : TypedGraphTest(3), javascript_(zone()), deps_(isolate(), zone()) {} | 64 : TypedGraphTest(3), javascript_(zone()), deps_(isolate(), zone()) {} |
68 ~TypedOptimizationTest() override {} | 65 ~TypedOptimizationTest() override {} |
69 | 66 |
70 protected: | 67 protected: |
71 Reduction Reduce(Node* node) { | 68 Reduction Reduce(Node* node) { |
(...skipping 148 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
220 Node* context = Parameter(Type::Any(), 1); | 217 Node* context = Parameter(Type::Any(), 1); |
221 Reduction r = Reduce(graph()->NewNode( | 218 Reduction r = Reduce(graph()->NewNode( |
222 javascript()->ToBoolean(ToBooleanHint::kAny), input, context)); | 219 javascript()->ToBoolean(ToBooleanHint::kAny), input, context)); |
223 ASSERT_TRUE(r.Changed()); | 220 ASSERT_TRUE(r.Changed()); |
224 EXPECT_THAT(r.replacement(), IsTrueConstant()); | 221 EXPECT_THAT(r.replacement(), IsTrueConstant()); |
225 } | 222 } |
226 | 223 |
227 } // namespace compiler | 224 } // namespace compiler |
228 } // namespace internal | 225 } // namespace internal |
229 } // namespace v8 | 226 } // namespace v8 |
OLD | NEW |