Index: src/x87/full-codegen-x87.cc |
diff --git a/src/x87/full-codegen-x87.cc b/src/x87/full-codegen-x87.cc |
index 1cc8caa1ac408f1f533013ba8359010033de0164..7e8ece481393140f077bef0e670409801847a4b5 100644 |
--- a/src/x87/full-codegen-x87.cc |
+++ b/src/x87/full-codegen-x87.cc |
@@ -2431,29 +2431,22 @@ void FullCodeGenerator::EmitClassDefineProperties(ClassLiteral* lit) { |
__ push(Operand(esp, 0)); // prototype |
} |
VisitForStackValue(key); |
+ VisitForStackValue(value); |
switch (property->kind()) { |
case ObjectLiteral::Property::CONSTANT: |
case ObjectLiteral::Property::MATERIALIZED_LITERAL: |
case ObjectLiteral::Property::COMPUTED: |
case ObjectLiteral::Property::PROTOTYPE: |
- VisitForStackValue(value); |
- __ push(Immediate(Smi::FromInt(NONE))); |
- __ CallRuntime(Runtime::kDefineDataPropertyUnchecked, 4); |
+ __ CallRuntime(Runtime::kDefineClassMethod, 3); |
break; |
case ObjectLiteral::Property::GETTER: |
- VisitForStackValue(value); |
- __ push(Immediate(isolate()->factory()->null_value())); |
- __ push(Immediate(Smi::FromInt(NONE))); |
- __ CallRuntime(Runtime::kDefineAccessorPropertyUnchecked, 5); |
+ __ CallRuntime(Runtime::kDefineClassGetter, 3); |
break; |
case ObjectLiteral::Property::SETTER: |
- __ push(Immediate(isolate()->factory()->null_value())); |
- VisitForStackValue(value); |
- __ push(Immediate(Smi::FromInt(NONE))); |
- __ CallRuntime(Runtime::kDefineAccessorPropertyUnchecked, 5); |
+ __ CallRuntime(Runtime::kDefineClassSetter, 3); |
break; |
default: |