OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 220 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
231 Handle<String> name, | 231 Handle<String> name, |
232 CallKind call_kind); | 232 CallKind call_kind); |
233 void CollectKeyedReceiverTypes(unsigned ast_id, | 233 void CollectKeyedReceiverTypes(unsigned ast_id, |
234 ZoneMapList* types); | 234 ZoneMapList* types); |
235 | 235 |
236 CheckType GetCallCheckType(Call* expr); | 236 CheckType GetCallCheckType(Call* expr); |
237 Handle<JSObject> GetPrototypeForPrimitiveCheck(CheckType check); | 237 Handle<JSObject> GetPrototypeForPrimitiveCheck(CheckType check); |
238 | 238 |
239 bool LoadIsBuiltin(Property* expr, Builtins::Name id); | 239 bool LoadIsBuiltin(Property* expr, Builtins::Name id); |
240 | 240 |
| 241 // TODO(1571) We can't use ToBooleanStub::Types as the return value because |
| 242 // of various cylces in our headers. Death to tons of implementations in |
| 243 // headers!! :-P |
| 244 byte ToBooleanTypes(unsigned ast_id); |
| 245 |
241 // Get type information for arithmetic operations and compares. | 246 // Get type information for arithmetic operations and compares. |
242 TypeInfo UnaryType(UnaryOperation* expr); | 247 TypeInfo UnaryType(UnaryOperation* expr); |
243 TypeInfo BinaryType(BinaryOperation* expr); | 248 TypeInfo BinaryType(BinaryOperation* expr); |
244 TypeInfo CompareType(CompareOperation* expr); | 249 TypeInfo CompareType(CompareOperation* expr); |
245 bool IsSymbolCompare(CompareOperation* expr); | 250 bool IsSymbolCompare(CompareOperation* expr); |
246 TypeInfo SwitchType(CaseClause* clause); | 251 TypeInfo SwitchType(CaseClause* clause); |
247 TypeInfo IncrementType(CountOperation* expr); | 252 TypeInfo IncrementType(CountOperation* expr); |
248 | 253 |
249 private: | 254 private: |
250 ZoneMapList* CollectReceiverTypes(unsigned ast_id, | 255 ZoneMapList* CollectReceiverTypes(unsigned ast_id, |
(...skipping 17 matching lines...) Expand all Loading... |
268 | 273 |
269 Handle<Context> global_context_; | 274 Handle<Context> global_context_; |
270 Handle<NumberDictionary> dictionary_; | 275 Handle<NumberDictionary> dictionary_; |
271 | 276 |
272 DISALLOW_COPY_AND_ASSIGN(TypeFeedbackOracle); | 277 DISALLOW_COPY_AND_ASSIGN(TypeFeedbackOracle); |
273 }; | 278 }; |
274 | 279 |
275 } } // namespace v8::internal | 280 } } // namespace v8::internal |
276 | 281 |
277 #endif // V8_TYPE_INFO_H_ | 282 #endif // V8_TYPE_INFO_H_ |
OLD | NEW |