OLD | NEW |
1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 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 #ifndef V8_TYPING_ASM_H_ | 5 #ifndef V8_TYPING_ASM_H_ |
6 #define V8_TYPING_ASM_H_ | 6 #define V8_TYPING_ASM_H_ |
7 | 7 |
8 #include "src/allocation.h" | 8 #include "src/allocation.h" |
9 #include "src/ast/ast.h" | 9 #include "src/ast/ast.h" |
10 #include "src/effects.h" | 10 #include "src/effects.h" |
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
106 VariableInfo* stdlib_simd_##name##_constructor_type_; | 106 VariableInfo* stdlib_simd_##name##_constructor_type_; |
107 SIMD128_TYPES(V) | 107 SIMD128_TYPES(V) |
108 #undef V | 108 #undef V |
109 | 109 |
110 // Map from Variable* to global/local variable Type*. | 110 // Map from Variable* to global/local variable Type*. |
111 ZoneHashMap global_variable_type_; | 111 ZoneHashMap global_variable_type_; |
112 ZoneHashMap local_variable_type_; | 112 ZoneHashMap local_variable_type_; |
113 | 113 |
114 bool in_function_; // In module function? | 114 bool in_function_; // In module function? |
115 bool building_function_tables_; | 115 bool building_function_tables_; |
116 bool visiting_exports_; | |
117 | 116 |
118 TypeCache const& cache_; | 117 TypeCache const& cache_; |
119 | 118 |
120 static const int kErrorMessageLimit = 100; | 119 static const int kErrorMessageLimit = 100; |
121 char error_message_[kErrorMessageLimit]; | 120 char error_message_[kErrorMessageLimit]; |
122 | 121 |
123 static const int kMaxUncombinedAdditiveSteps = 1 << 20; | 122 static const int kMaxUncombinedAdditiveSteps = 1 << 20; |
124 static const int kMaxUncombinedMultiplicativeSteps = 1; | 123 static const int kMaxUncombinedMultiplicativeSteps = 1; |
125 | 124 |
126 void InitializeStdlib(); | 125 void InitializeStdlib(); |
(...skipping 28 matching lines...) Expand all Loading... |
155 void VisitLibraryAccess(ObjectTypeMap* map, Property* expr); | 154 void VisitLibraryAccess(ObjectTypeMap* map, Property* expr); |
156 | 155 |
157 void SetResult(Expression* expr, Type* type); | 156 void SetResult(Expression* expr, Type* type); |
158 void IntersectResult(Expression* expr, Type* type); | 157 void IntersectResult(Expression* expr, Type* type); |
159 | 158 |
160 void VisitWithExpectation(Expression* expr, Type* expected_type, | 159 void VisitWithExpectation(Expression* expr, Type* expected_type, |
161 const char* msg); | 160 const char* msg); |
162 | 161 |
163 void VisitLiteral(Literal* expr, bool is_return); | 162 void VisitLiteral(Literal* expr, bool is_return); |
164 | 163 |
165 void VisitVariableProxy(VariableProxy* expr, bool assignment); | |
166 | |
167 void VisitIntegerBitwiseOperator(BinaryOperation* expr, Type* left_expected, | 164 void VisitIntegerBitwiseOperator(BinaryOperation* expr, Type* left_expected, |
168 Type* right_expected, Type* result_type, | 165 Type* right_expected, Type* result_type, |
169 bool conversion); | 166 bool conversion); |
170 | 167 |
171 Zone* zone() const { return zone_; } | 168 Zone* zone() const { return zone_; } |
172 | 169 |
173 #define DECLARE_VISIT(type) void Visit##type(type* node) override; | 170 #define DECLARE_VISIT(type) void Visit##type(type* node) override; |
174 AST_NODE_LIST(DECLARE_VISIT) | 171 AST_NODE_LIST(DECLARE_VISIT) |
175 #undef DECLARE_VISIT | 172 #undef DECLARE_VISIT |
176 | 173 |
177 DISALLOW_COPY_AND_ASSIGN(AsmTyper); | 174 DISALLOW_COPY_AND_ASSIGN(AsmTyper); |
178 }; | 175 }; |
179 } // namespace internal | 176 } // namespace internal |
180 } // namespace v8 | 177 } // namespace v8 |
181 | 178 |
182 #endif // V8_TYPING_ASM_H_ | 179 #endif // V8_TYPING_ASM_H_ |
OLD | NEW |