| Index: src/x87/full-codegen-x87.cc
|
| diff --git a/src/x87/full-codegen-x87.cc b/src/x87/full-codegen-x87.cc
|
| index 06eaa21f311b8e4ab839e56a0976ca1d1d4ac457..6f2add975bee873e99da2dd2c4af9590b2f6e2b9 100644
|
| --- a/src/x87/full-codegen-x87.cc
|
| +++ b/src/x87/full-codegen-x87.cc
|
| @@ -2198,7 +2198,7 @@ void FullCodeGenerator::EmitCreateIteratorResult(bool done) {
|
|
|
| void FullCodeGenerator::EmitNamedPropertyLoad(Property* prop) {
|
| SetSourcePosition(prop->position());
|
| - Literal* key = prop->key()->AsLiteral();
|
| + Literal* key = prop->key()->AsStringLiteral();
|
| ASSERT(!key->value()->IsSmi());
|
| __ mov(ecx, Immediate(key->value()));
|
| CallLoadIC(NOT_CONTEXTUAL, prop->PropertyFeedbackId());
|
| @@ -2345,7 +2345,7 @@ void FullCodeGenerator::EmitAssignment(Expression* expr) {
|
| VisitForAccumulatorValue(prop->obj());
|
| __ mov(edx, eax);
|
| __ pop(eax); // Restore value.
|
| - __ mov(ecx, prop->key()->AsLiteral()->value());
|
| + __ mov(ecx, prop->key()->AsStringLiteral()->value());
|
| CallStoreIC();
|
| break;
|
| }
|
| @@ -2460,11 +2460,11 @@ void FullCodeGenerator::EmitNamedPropertyAssignment(Assignment* expr) {
|
|
|
| Property* prop = expr->target()->AsProperty();
|
| ASSERT(prop != NULL);
|
| - ASSERT(prop->key()->AsLiteral() != NULL);
|
| + ASSERT(prop->key()->AsStringLiteral() != NULL);
|
|
|
| // Record source code position before IC call.
|
| SetSourcePosition(expr->position());
|
| - __ mov(ecx, prop->key()->AsLiteral()->value());
|
| + __ mov(ecx, prop->key()->AsStringLiteral()->value());
|
| __ pop(edx);
|
| CallStoreIC(expr->AssignmentFeedbackId());
|
| PrepareForBailoutForId(expr->AssignmentId(), TOS_REG);
|
| @@ -3291,8 +3291,8 @@ void FullCodeGenerator::EmitValueOf(CallRuntime* expr) {
|
| void FullCodeGenerator::EmitDateField(CallRuntime* expr) {
|
| ZoneList<Expression*>* args = expr->arguments();
|
| ASSERT(args->length() == 2);
|
| - ASSERT_NE(NULL, args->at(1)->AsLiteral());
|
| - Smi* index = Smi::cast(*(args->at(1)->AsLiteral()->value()));
|
| + ASSERT_NE(NULL, args->at(1)->AsNumberLiteral());
|
| + Smi* index = Smi::cast(*(args->at(1)->AsNumberLiteral()->value()));
|
|
|
| VisitForAccumulatorValue(args->at(0)); // Load the object.
|
|
|
| @@ -3646,8 +3646,8 @@ void FullCodeGenerator::EmitGetFromCache(CallRuntime* expr) {
|
| ZoneList<Expression*>* args = expr->arguments();
|
| ASSERT_EQ(2, args->length());
|
|
|
| - ASSERT_NE(NULL, args->at(0)->AsLiteral());
|
| - int cache_id = Smi::cast(*(args->at(0)->AsLiteral()->value()))->value();
|
| + ASSERT_NE(NULL, args->at(0)->AsNumberLiteral());
|
| + int cache_id = Smi::cast(*(args->at(0)->AsNumberLiteral()->value()))->value();
|
|
|
| Handle<FixedArray> jsfunction_result_caches(
|
| isolate()->native_context()->jsfunction_result_caches());
|
| @@ -4316,7 +4316,7 @@ void FullCodeGenerator::VisitCountOperation(CountOperation* expr) {
|
| }
|
| break;
|
| case NAMED_PROPERTY: {
|
| - __ mov(ecx, prop->key()->AsLiteral()->value());
|
| + __ mov(ecx, prop->key()->AsStringLiteral()->value());
|
| __ pop(edx);
|
| CallStoreIC(expr->CountStoreFeedbackId());
|
| PrepareForBailoutForId(expr->AssignmentId(), TOS_REG);
|
|
|