OLD | NEW |
1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 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 277 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
288 void AstTyper::VisitObjectLiteral(ObjectLiteral* expr) { | 288 void AstTyper::VisitObjectLiteral(ObjectLiteral* expr) { |
289 ASSERT(!HasStackOverflow()); | 289 ASSERT(!HasStackOverflow()); |
290 ZoneList<ObjectLiteral::Property*>* properties = expr->properties(); | 290 ZoneList<ObjectLiteral::Property*>* properties = expr->properties(); |
291 for (int i = 0; i < properties->length(); ++i) { | 291 for (int i = 0; i < properties->length(); ++i) { |
292 ObjectLiteral::Property* prop = properties->at(i); | 292 ObjectLiteral::Property* prop = properties->at(i); |
293 CHECK_ALIVE(Visit(prop->value())); | 293 CHECK_ALIVE(Visit(prop->value())); |
294 | 294 |
295 if ((prop->kind() == ObjectLiteral::Property::MATERIALIZED_LITERAL && | 295 if ((prop->kind() == ObjectLiteral::Property::MATERIALIZED_LITERAL && |
296 !CompileTimeValue::IsCompileTimeValue(prop->value())) || | 296 !CompileTimeValue::IsCompileTimeValue(prop->value())) || |
297 prop->kind() == ObjectLiteral::Property::COMPUTED) { | 297 prop->kind() == ObjectLiteral::Property::COMPUTED) { |
298 if (prop->key()->handle()->IsInternalizedString() && prop->emit_store()) | 298 if (prop->key()->value()->IsInternalizedString() && prop->emit_store()) |
299 prop->RecordTypeFeedback(oracle()); | 299 prop->RecordTypeFeedback(oracle()); |
300 } | 300 } |
301 } | 301 } |
302 } | 302 } |
303 | 303 |
304 | 304 |
305 void AstTyper::VisitArrayLiteral(ArrayLiteral* expr) { | 305 void AstTyper::VisitArrayLiteral(ArrayLiteral* expr) { |
306 ASSERT(!HasStackOverflow()); | 306 ASSERT(!HasStackOverflow()); |
307 ZoneList<Expression*>* values = expr->values(); | 307 ZoneList<Expression*>* values = expr->values(); |
308 for (int i = 0; i < values->length(); ++i) { | 308 for (int i = 0; i < values->length(); ++i) { |
(...skipping 216 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
525 } | 525 } |
526 | 526 |
527 | 527 |
528 void AstTyper::VisitModuleStatement(ModuleStatement* stmt) { | 528 void AstTyper::VisitModuleStatement(ModuleStatement* stmt) { |
529 ASSERT(!HasStackOverflow()); | 529 ASSERT(!HasStackOverflow()); |
530 CHECK_ALIVE(Visit(stmt->body())); | 530 CHECK_ALIVE(Visit(stmt->body())); |
531 } | 531 } |
532 | 532 |
533 | 533 |
534 } } // namespace v8::internal | 534 } } // namespace v8::internal |
OLD | NEW |