| Index: src/full-codegen/x87/full-codegen-x87.cc
|
| diff --git a/src/full-codegen/x87/full-codegen-x87.cc b/src/full-codegen/x87/full-codegen-x87.cc
|
| index 35037d71fabd3f053f401d413726ca5ed51aae38..6d6d9de88262a81231c58d129c656a8e7f7846ef 100644
|
| --- a/src/full-codegen/x87/full-codegen-x87.cc
|
| +++ b/src/full-codegen/x87/full-codegen-x87.cc
|
| @@ -137,7 +137,7 @@ void FullCodeGenerator::Generate() {
|
| ExternalReference::address_of_real_stack_limit(isolate());
|
| __ cmp(ecx, Operand::StaticVariable(stack_limit));
|
| __ j(above_equal, &ok, Label::kNear);
|
| - __ CallRuntime(Runtime::kThrowStackOverflow, 0);
|
| + __ CallRuntime(Runtime::kThrowStackOverflow);
|
| __ bind(&ok);
|
| }
|
| __ mov(eax, Immediate(isolate()->factory()->undefined_value()));
|
| @@ -173,7 +173,7 @@ void FullCodeGenerator::Generate() {
|
| if (info->scope()->is_script_scope()) {
|
| __ push(edi);
|
| __ Push(info->scope()->GetScopeInfo(info->isolate()));
|
| - __ CallRuntime(Runtime::kNewScriptContext, 2);
|
| + __ CallRuntime(Runtime::kNewScriptContext);
|
| PrepareForBailoutForId(BailoutId::ScriptContext(), TOS_REG);
|
| // The new target value is not used, clobbering is safe.
|
| DCHECK_NULL(info->scope()->new_target_var());
|
| @@ -188,7 +188,7 @@ void FullCodeGenerator::Generate() {
|
| need_write_barrier = false;
|
| } else {
|
| __ push(edi);
|
| - __ CallRuntime(Runtime::kNewFunctionContext, 1);
|
| + __ CallRuntime(Runtime::kNewFunctionContext);
|
| }
|
| if (info->scope()->new_target_var() != nullptr) {
|
| __ pop(edx); // Restore new target.
|
| @@ -302,7 +302,7 @@ void FullCodeGenerator::Generate() {
|
| }
|
|
|
| if (FLAG_trace) {
|
| - __ CallRuntime(Runtime::kTraceEnter, 0);
|
| + __ CallRuntime(Runtime::kTraceEnter);
|
| }
|
|
|
| // Visit the declarations and body unless there is an illegal
|
| @@ -407,7 +407,7 @@ void FullCodeGenerator::EmitReturnSequence() {
|
| __ bind(&return_label_);
|
| if (FLAG_trace) {
|
| __ push(eax);
|
| - __ CallRuntime(Runtime::kTraceExit, 1);
|
| + __ CallRuntime(Runtime::kTraceExit);
|
| }
|
| // Pretend that the exit is a backwards jump to the entry.
|
| int weight = 1;
|
| @@ -792,7 +792,7 @@ void FullCodeGenerator::VisitVariableDeclaration(
|
| }
|
| __ push(
|
| Immediate(Smi::FromInt(variable->DeclarationPropertyAttributes())));
|
| - __ CallRuntime(Runtime::kDeclareLookupSlot, 3);
|
| + __ CallRuntime(Runtime::kDeclareLookupSlot);
|
| break;
|
| }
|
| }
|
| @@ -841,7 +841,7 @@ void FullCodeGenerator::VisitFunctionDeclaration(
|
| VisitForStackValue(declaration->fun());
|
| __ push(
|
| Immediate(Smi::FromInt(variable->DeclarationPropertyAttributes())));
|
| - __ CallRuntime(Runtime::kDeclareLookupSlot, 3);
|
| + __ CallRuntime(Runtime::kDeclareLookupSlot);
|
| break;
|
| }
|
| }
|
| @@ -852,7 +852,7 @@ void FullCodeGenerator::DeclareGlobals(Handle<FixedArray> pairs) {
|
| // Call the runtime to declare the globals.
|
| __ Push(pairs);
|
| __ Push(Smi::FromInt(DeclareGlobalsFlags()));
|
| - __ CallRuntime(Runtime::kDeclareGlobals, 2);
|
| + __ CallRuntime(Runtime::kDeclareGlobals);
|
| // Return value is ignored.
|
| }
|
|
|
| @@ -860,7 +860,7 @@ void FullCodeGenerator::DeclareGlobals(Handle<FixedArray> pairs) {
|
| void FullCodeGenerator::DeclareModules(Handle<FixedArray> descriptions) {
|
| // Call the runtime to declare the modules.
|
| __ Push(descriptions);
|
| - __ CallRuntime(Runtime::kDeclareModules, 1);
|
| + __ CallRuntime(Runtime::kDeclareModules);
|
| // Return value is ignored.
|
| }
|
|
|
| @@ -1008,7 +1008,7 @@ void FullCodeGenerator::VisitForInStatement(ForInStatement* stmt) {
|
| // Get the set of properties to enumerate.
|
| __ bind(&call_runtime);
|
| __ push(eax);
|
| - __ CallRuntime(Runtime::kGetPropertyNamesFast, 1);
|
| + __ CallRuntime(Runtime::kGetPropertyNamesFast);
|
| PrepareForBailoutForId(stmt->EnumId(), TOS_REG);
|
| __ cmp(FieldOperand(eax, HeapObject::kMapOffset),
|
| isolate()->factory()->meta_map());
|
| @@ -1080,7 +1080,7 @@ void FullCodeGenerator::VisitForInStatement(ForInStatement* stmt) {
|
| // just skip it.
|
| __ push(ecx); // Enumerable.
|
| __ push(ebx); // Current entry.
|
| - __ CallRuntime(Runtime::kForInFilter, 2);
|
| + __ CallRuntime(Runtime::kForInFilter);
|
| PrepareForBailoutForId(stmt->FilterId(), TOS_REG);
|
| __ cmp(eax, isolate()->factory()->undefined_value());
|
| __ j(equal, loop_statement.continue_label());
|
| @@ -1138,8 +1138,8 @@ void FullCodeGenerator::EmitNewClosure(Handle<SharedFunctionInfo> info,
|
| __ CallStub(&stub);
|
| } else {
|
| __ push(Immediate(info));
|
| - __ CallRuntime(
|
| - pretenure ? Runtime::kNewClosure_Tenured : Runtime::kNewClosure, 1);
|
| + __ CallRuntime(pretenure ? Runtime::kNewClosure_Tenured
|
| + : Runtime::kNewClosure);
|
| }
|
| context()->Plug(eax);
|
| }
|
| @@ -1275,7 +1275,7 @@ void FullCodeGenerator::EmitDynamicLookupFastCase(VariableProxy* proxy,
|
| __ mov(eax, isolate()->factory()->undefined_value());
|
| } else { // LET || CONST
|
| __ push(Immediate(var->name()));
|
| - __ CallRuntime(Runtime::kThrowReferenceError, 1);
|
| + __ CallRuntime(Runtime::kThrowReferenceError);
|
| }
|
| }
|
| __ jmp(done);
|
| @@ -1333,7 +1333,7 @@ void FullCodeGenerator::EmitVariableLoad(VariableProxy* proxy,
|
| // Throw a reference error when using an uninitialized let/const
|
| // binding in harmony mode.
|
| __ push(Immediate(var->name()));
|
| - __ CallRuntime(Runtime::kThrowReferenceError, 1);
|
| + __ CallRuntime(Runtime::kThrowReferenceError);
|
| } else {
|
| // Uninitialized legacy const bindings are unholed.
|
| DCHECK(var->mode() == CONST_LEGACY);
|
| @@ -1360,7 +1360,7 @@ void FullCodeGenerator::EmitVariableLoad(VariableProxy* proxy,
|
| typeof_mode == NOT_INSIDE_TYPEOF
|
| ? Runtime::kLoadLookupSlot
|
| : Runtime::kLoadLookupSlotNoReferenceError;
|
| - __ CallRuntime(function_id, 2);
|
| + __ CallRuntime(function_id);
|
| __ bind(&done);
|
| context()->Plug(eax);
|
| break;
|
| @@ -1409,7 +1409,7 @@ void FullCodeGenerator::VisitObjectLiteral(ObjectLiteral* expr) {
|
| __ push(Immediate(Smi::FromInt(expr->literal_index())));
|
| __ push(Immediate(constant_properties));
|
| __ push(Immediate(Smi::FromInt(flags)));
|
| - __ CallRuntime(Runtime::kCreateObjectLiteral, 4);
|
| + __ CallRuntime(Runtime::kCreateObjectLiteral);
|
| } else {
|
| __ mov(eax, Operand(ebp, JavaScriptFrameConstants::kFunctionOffset));
|
| __ mov(ebx, Immediate(Smi::FromInt(expr->literal_index())));
|
| @@ -1471,7 +1471,7 @@ void FullCodeGenerator::VisitObjectLiteral(ObjectLiteral* expr) {
|
| EmitSetHomeObject(value, 2, property->GetSlot());
|
| }
|
| __ push(Immediate(Smi::FromInt(SLOPPY))); // Language mode
|
| - __ CallRuntime(Runtime::kSetProperty, 4);
|
| + __ CallRuntime(Runtime::kSetProperty);
|
| } else {
|
| __ Drop(3);
|
| }
|
| @@ -1480,7 +1480,7 @@ void FullCodeGenerator::VisitObjectLiteral(ObjectLiteral* expr) {
|
| __ push(Operand(esp, 0)); // Duplicate receiver.
|
| VisitForStackValue(value);
|
| DCHECK(property->emit_store());
|
| - __ CallRuntime(Runtime::kInternalSetPrototype, 2);
|
| + __ CallRuntime(Runtime::kInternalSetPrototype);
|
| break;
|
| case ObjectLiteral::Property::GETTER:
|
| if (property->emit_store()) {
|
| @@ -1507,7 +1507,7 @@ void FullCodeGenerator::VisitObjectLiteral(ObjectLiteral* expr) {
|
| EmitAccessor(it->second->setter);
|
|
|
| __ push(Immediate(Smi::FromInt(NONE)));
|
| - __ CallRuntime(Runtime::kDefineAccessorPropertyUnchecked, 5);
|
| + __ CallRuntime(Runtime::kDefineAccessorPropertyUnchecked);
|
| }
|
|
|
| // Object literals have two parts. The "static" part on the left contains no
|
| @@ -1534,7 +1534,7 @@ void FullCodeGenerator::VisitObjectLiteral(ObjectLiteral* expr) {
|
| DCHECK(!property->is_computed_name());
|
| VisitForStackValue(value);
|
| DCHECK(property->emit_store());
|
| - __ CallRuntime(Runtime::kInternalSetPrototype, 2);
|
| + __ CallRuntime(Runtime::kInternalSetPrototype);
|
| } else {
|
| EmitPropertyKey(property, expr->GetIdForProperty(property_index));
|
| VisitForStackValue(value);
|
| @@ -1548,7 +1548,7 @@ void FullCodeGenerator::VisitObjectLiteral(ObjectLiteral* expr) {
|
| case ObjectLiteral::Property::COMPUTED:
|
| if (property->emit_store()) {
|
| __ push(Immediate(Smi::FromInt(NONE)));
|
| - __ CallRuntime(Runtime::kDefineDataPropertyUnchecked, 4);
|
| + __ CallRuntime(Runtime::kDefineDataPropertyUnchecked);
|
| } else {
|
| __ Drop(3);
|
| }
|
| @@ -1560,12 +1560,12 @@ void FullCodeGenerator::VisitObjectLiteral(ObjectLiteral* expr) {
|
|
|
| case ObjectLiteral::Property::GETTER:
|
| __ push(Immediate(Smi::FromInt(NONE)));
|
| - __ CallRuntime(Runtime::kDefineGetterPropertyUnchecked, 4);
|
| + __ CallRuntime(Runtime::kDefineGetterPropertyUnchecked);
|
| break;
|
|
|
| case ObjectLiteral::Property::SETTER:
|
| __ push(Immediate(Smi::FromInt(NONE)));
|
| - __ CallRuntime(Runtime::kDefineSetterPropertyUnchecked, 4);
|
| + __ CallRuntime(Runtime::kDefineSetterPropertyUnchecked);
|
| break;
|
| }
|
| }
|
| @@ -1574,7 +1574,7 @@ void FullCodeGenerator::VisitObjectLiteral(ObjectLiteral* expr) {
|
| if (expr->has_function()) {
|
| DCHECK(result_saved);
|
| __ push(Operand(esp, 0));
|
| - __ CallRuntime(Runtime::kToFastProperties, 1);
|
| + __ CallRuntime(Runtime::kToFastProperties);
|
| }
|
|
|
| if (result_saved) {
|
| @@ -1604,7 +1604,7 @@ void FullCodeGenerator::VisitArrayLiteral(ArrayLiteral* expr) {
|
| __ push(Immediate(Smi::FromInt(expr->literal_index())));
|
| __ push(Immediate(constant_elements));
|
| __ push(Immediate(Smi::FromInt(expr->ComputeFlags())));
|
| - __ CallRuntime(Runtime::kCreateArrayLiteral, 4);
|
| + __ CallRuntime(Runtime::kCreateArrayLiteral);
|
| } else {
|
| __ mov(eax, Operand(ebp, JavaScriptFrameConstants::kFunctionOffset));
|
| __ mov(ebx, Immediate(Smi::FromInt(expr->literal_index())));
|
| @@ -1664,7 +1664,7 @@ void FullCodeGenerator::VisitArrayLiteral(ArrayLiteral* expr) {
|
| CALL_FUNCTION);
|
| } else {
|
| VisitForStackValue(subexpr);
|
| - __ CallRuntime(Runtime::kAppendElement, 2);
|
| + __ CallRuntime(Runtime::kAppendElement);
|
| }
|
|
|
| PrepareForBailoutForId(expr->GetIdForElement(array_index), NO_REGISTERS);
|
| @@ -2062,7 +2062,7 @@ void FullCodeGenerator::EmitGeneratorResume(Expression *generator,
|
| __ push(ebx);
|
| __ push(result_register());
|
| __ Push(Smi::FromInt(resume_mode));
|
| - __ CallRuntime(Runtime::kResumeJSGeneratorObject, 3);
|
| + __ CallRuntime(Runtime::kResumeJSGeneratorObject);
|
| // Not reached: the runtime call returns elsewhere.
|
| __ Abort(kGeneratorFailedToResume);
|
|
|
| @@ -2079,7 +2079,7 @@ void FullCodeGenerator::EmitCreateIteratorResult(bool done) {
|
|
|
| __ bind(&allocate);
|
| __ Push(Smi::FromInt(JSIteratorResult::kSize));
|
| - __ CallRuntime(Runtime::kAllocateInNewSpace, 1);
|
| + __ CallRuntime(Runtime::kAllocateInNewSpace);
|
|
|
| __ bind(&done_allocate);
|
| __ mov(ebx, NativeContextOperand());
|
| @@ -2118,7 +2118,7 @@ void FullCodeGenerator::EmitNamedSuperPropertyLoad(Property* prop) {
|
|
|
| __ push(Immediate(key->value()));
|
| __ push(Immediate(Smi::FromInt(language_mode())));
|
| - __ CallRuntime(Runtime::kLoadFromSuper, 4);
|
| + __ CallRuntime(Runtime::kLoadFromSuper);
|
| }
|
|
|
|
|
| @@ -2135,7 +2135,7 @@ void FullCodeGenerator::EmitKeyedSuperPropertyLoad(Property* prop) {
|
| // Stack: receiver, home_object, key.
|
| SetExpressionPosition(prop);
|
| __ push(Immediate(Smi::FromInt(language_mode())));
|
| - __ CallRuntime(Runtime::kLoadKeyedFromSuper, 4);
|
| + __ CallRuntime(Runtime::kLoadKeyedFromSuper);
|
| }
|
|
|
|
|
| @@ -2261,7 +2261,7 @@ void FullCodeGenerator::EmitClassDefineProperties(ClassLiteral* lit) {
|
| // need to check for an own read only property we special case this so we do
|
| // not need to do this for every property.
|
| if (property->is_static() && property->is_computed_name()) {
|
| - __ CallRuntime(Runtime::kThrowIfStaticPrototype, 1);
|
| + __ CallRuntime(Runtime::kThrowIfStaticPrototype);
|
| __ push(eax);
|
| }
|
|
|
| @@ -2276,24 +2276,24 @@ void FullCodeGenerator::EmitClassDefineProperties(ClassLiteral* lit) {
|
| case ObjectLiteral::Property::PROTOTYPE:
|
| UNREACHABLE();
|
| case ObjectLiteral::Property::COMPUTED:
|
| - __ CallRuntime(Runtime::kDefineClassMethod, 3);
|
| + __ CallRuntime(Runtime::kDefineClassMethod);
|
| break;
|
|
|
| case ObjectLiteral::Property::GETTER:
|
| __ push(Immediate(Smi::FromInt(DONT_ENUM)));
|
| - __ CallRuntime(Runtime::kDefineGetterPropertyUnchecked, 4);
|
| + __ CallRuntime(Runtime::kDefineGetterPropertyUnchecked);
|
| break;
|
|
|
| case ObjectLiteral::Property::SETTER:
|
| __ push(Immediate(Smi::FromInt(DONT_ENUM)));
|
| - __ CallRuntime(Runtime::kDefineSetterPropertyUnchecked, 4);
|
| + __ CallRuntime(Runtime::kDefineSetterPropertyUnchecked);
|
| break;
|
| }
|
| }
|
|
|
| // Set both the prototype and constructor to have fast properties, and also
|
| // freeze them in strong mode.
|
| - __ CallRuntime(Runtime::kFinalizeClassDefinition, 2);
|
| + __ CallRuntime(Runtime::kFinalizeClassDefinition);
|
| }
|
|
|
|
|
| @@ -2421,7 +2421,7 @@ void FullCodeGenerator::EmitVariableAssignment(Variable* var, Token::Value op,
|
| __ cmp(edx, isolate()->factory()->the_hole_value());
|
| __ j(not_equal, &assign, Label::kNear);
|
| __ push(Immediate(var->name()));
|
| - __ CallRuntime(Runtime::kThrowReferenceError, 1);
|
| + __ CallRuntime(Runtime::kThrowReferenceError);
|
| __ bind(&assign);
|
| EmitStoreToStackLocalOrContextSlot(var, location);
|
|
|
| @@ -2435,9 +2435,9 @@ void FullCodeGenerator::EmitVariableAssignment(Variable* var, Token::Value op,
|
| __ cmp(edx, isolate()->factory()->the_hole_value());
|
| __ j(not_equal, &const_error, Label::kNear);
|
| __ push(Immediate(var->name()));
|
| - __ CallRuntime(Runtime::kThrowReferenceError, 1);
|
| + __ CallRuntime(Runtime::kThrowReferenceError);
|
| __ bind(&const_error);
|
| - __ CallRuntime(Runtime::kThrowConstAssignError, 0);
|
| + __ CallRuntime(Runtime::kThrowConstAssignError);
|
|
|
| } else if (var->is_this() && var->mode() == CONST && op == Token::INIT) {
|
| // Initializing assignment to const {this} needs a write barrier.
|
| @@ -2448,7 +2448,7 @@ void FullCodeGenerator::EmitVariableAssignment(Variable* var, Token::Value op,
|
| __ cmp(edx, isolate()->factory()->the_hole_value());
|
| __ j(equal, &uninitialized_this);
|
| __ push(Immediate(var->name()));
|
| - __ CallRuntime(Runtime::kThrowReferenceError, 1);
|
| + __ CallRuntime(Runtime::kThrowReferenceError);
|
| __ bind(&uninitialized_this);
|
| EmitStoreToStackLocalOrContextSlot(var, location);
|
|
|
| @@ -2460,7 +2460,7 @@ void FullCodeGenerator::EmitVariableAssignment(Variable* var, Token::Value op,
|
| __ push(esi); // Context.
|
| __ push(Immediate(var->name()));
|
| __ push(Immediate(Smi::FromInt(language_mode())));
|
| - __ CallRuntime(Runtime::kStoreLookupSlot, 4);
|
| + __ CallRuntime(Runtime::kStoreLookupSlot);
|
| } else {
|
| // Assignment to var or initializing assignment to let/const in harmony
|
| // mode.
|
| @@ -2482,7 +2482,7 @@ void FullCodeGenerator::EmitVariableAssignment(Variable* var, Token::Value op,
|
| __ push(eax);
|
| __ push(esi);
|
| __ push(Immediate(var->name()));
|
| - __ CallRuntime(Runtime::kInitializeLegacyConstLookupSlot, 3);
|
| + __ CallRuntime(Runtime::kInitializeLegacyConstLookupSlot);
|
| } else {
|
| DCHECK(var->IsStackLocal() || var->IsContextSlot());
|
| Label skip;
|
| @@ -2497,7 +2497,7 @@ void FullCodeGenerator::EmitVariableAssignment(Variable* var, Token::Value op,
|
| } else {
|
| DCHECK(var->mode() == CONST_LEGACY && op != Token::INIT);
|
| if (is_strict(language_mode())) {
|
| - __ CallRuntime(Runtime::kThrowConstAssignError, 0);
|
| + __ CallRuntime(Runtime::kThrowConstAssignError);
|
| }
|
| // Silently ignore store in sloppy mode.
|
| }
|
| @@ -2532,8 +2532,7 @@ void FullCodeGenerator::EmitNamedSuperPropertyStore(Property* prop) {
|
| __ push(Immediate(key->value()));
|
| __ push(eax);
|
| __ CallRuntime((is_strict(language_mode()) ? Runtime::kStoreToSuper_Strict
|
| - : Runtime::kStoreToSuper_Sloppy),
|
| - 4);
|
| + : Runtime::kStoreToSuper_Sloppy));
|
| }
|
|
|
|
|
| @@ -2543,10 +2542,9 @@ void FullCodeGenerator::EmitKeyedSuperPropertyStore(Property* prop) {
|
| // stack : receiver ('this'), home_object, key
|
|
|
| __ push(eax);
|
| - __ CallRuntime(
|
| - (is_strict(language_mode()) ? Runtime::kStoreKeyedToSuper_Strict
|
| - : Runtime::kStoreKeyedToSuper_Sloppy),
|
| - 4);
|
| + __ CallRuntime((is_strict(language_mode())
|
| + ? Runtime::kStoreKeyedToSuper_Strict
|
| + : Runtime::kStoreKeyedToSuper_Sloppy));
|
| }
|
|
|
|
|
| @@ -2669,7 +2667,7 @@ void FullCodeGenerator::EmitSuperCallWithLoadIC(Call* expr) {
|
| // - home_object
|
| // - key
|
| // - language_mode
|
| - __ CallRuntime(Runtime::kLoadFromSuper, 4);
|
| + __ CallRuntime(Runtime::kLoadFromSuper);
|
|
|
| // Replace home_object with target function.
|
| __ mov(Operand(esp, kPointerSize), eax);
|
| @@ -2727,7 +2725,7 @@ void FullCodeGenerator::EmitKeyedSuperCallWithLoadIC(Call* expr) {
|
| // - home_object
|
| // - key
|
| // - language_mode
|
| - __ CallRuntime(Runtime::kLoadKeyedFromSuper, 4);
|
| + __ CallRuntime(Runtime::kLoadKeyedFromSuper);
|
|
|
| // Replace home_object with target function.
|
| __ mov(Operand(esp, kPointerSize), eax);
|
| @@ -2783,7 +2781,7 @@ void FullCodeGenerator::EmitResolvePossiblyDirectEval(int arg_count) {
|
| __ push(Immediate(Smi::FromInt(scope()->start_position())));
|
|
|
| // Do the runtime call.
|
| - __ CallRuntime(Runtime::kResolvePossiblyDirectEval, 5);
|
| + __ CallRuntime(Runtime::kResolvePossiblyDirectEval);
|
| }
|
|
|
|
|
| @@ -2802,7 +2800,7 @@ void FullCodeGenerator::PushCalleeAndWithBaseObject(Call* expr) {
|
| // the object holding it (returned in edx).
|
| __ push(context_register());
|
| __ push(Immediate(callee->name()));
|
| - __ CallRuntime(Runtime::kLoadLookupSlot, 2);
|
| + __ CallRuntime(Runtime::kLoadLookupSlot);
|
| __ push(eax); // Function.
|
| __ push(edx); // Receiver.
|
| PrepareForBailoutForId(expr->LookupId(), NO_REGISTERS);
|
| @@ -3445,7 +3443,7 @@ void FullCodeGenerator::EmitToInteger(CallRuntime* expr) {
|
| Label done_convert;
|
| __ JumpIfSmi(eax, &done_convert, Label::kNear);
|
| __ Push(eax);
|
| - __ CallRuntime(Runtime::kToInteger, 1);
|
| + __ CallRuntime(Runtime::kToInteger);
|
| __ bind(&done_convert);
|
| context()->Plug(eax);
|
| }
|
| @@ -3466,7 +3464,7 @@ void FullCodeGenerator::EmitToName(CallRuntime* expr) {
|
| __ j(below_equal, &done_convert, Label::kNear);
|
| __ bind(&convert);
|
| __ Push(eax);
|
| - __ CallRuntime(Runtime::kToName, 1);
|
| + __ CallRuntime(Runtime::kToName);
|
| __ bind(&done_convert);
|
| context()->Plug(eax);
|
| }
|
| @@ -3956,7 +3954,7 @@ void FullCodeGenerator::EmitCreateIterResultObject(CallRuntime* expr) {
|
| __ jmp(&done, Label::kNear);
|
|
|
| __ bind(&runtime);
|
| - __ CallRuntime(Runtime::kCreateIterResultObject, 2);
|
| + __ CallRuntime(Runtime::kCreateIterResultObject);
|
|
|
| __ bind(&done);
|
| context()->Plug(eax);
|
| @@ -4046,8 +4044,7 @@ void FullCodeGenerator::VisitUnaryOperation(UnaryOperation* expr) {
|
| VisitForStackValue(property->key());
|
| __ CallRuntime(is_strict(language_mode())
|
| ? Runtime::kDeleteProperty_Strict
|
| - : Runtime::kDeleteProperty_Sloppy,
|
| - 2);
|
| + : Runtime::kDeleteProperty_Sloppy);
|
| context()->Plug(eax);
|
| } else if (proxy != NULL) {
|
| Variable* var = proxy->var();
|
| @@ -4059,7 +4056,7 @@ void FullCodeGenerator::VisitUnaryOperation(UnaryOperation* expr) {
|
| __ mov(eax, NativeContextOperand());
|
| __ push(ContextOperand(eax, Context::EXTENSION_INDEX));
|
| __ push(Immediate(var->name()));
|
| - __ CallRuntime(Runtime::kDeleteProperty_Sloppy, 2);
|
| + __ CallRuntime(Runtime::kDeleteProperty_Sloppy);
|
| context()->Plug(eax);
|
| } else if (var->IsStackAllocated() || var->IsContextSlot()) {
|
| // Result of deleting non-global variables is false. 'this' is
|
| @@ -4071,7 +4068,7 @@ void FullCodeGenerator::VisitUnaryOperation(UnaryOperation* expr) {
|
| // context where the variable was introduced.
|
| __ push(context_register());
|
| __ push(Immediate(var->name()));
|
| - __ CallRuntime(Runtime::kDeleteLookupSlot, 2);
|
| + __ CallRuntime(Runtime::kDeleteLookupSlot);
|
| context()->Plug(eax);
|
| }
|
| } else {
|
| @@ -4508,7 +4505,7 @@ void FullCodeGenerator::VisitCompareOperation(CompareOperation* expr) {
|
| switch (op) {
|
| case Token::IN:
|
| VisitForStackValue(expr->right());
|
| - __ CallRuntime(Runtime::kHasProperty, 2);
|
| + __ CallRuntime(Runtime::kHasProperty);
|
| PrepareForBailoutBeforeSplit(expr, false, NULL, NULL);
|
| __ cmp(eax, isolate()->factory()->true_value());
|
| Split(equal, if_true, if_false, fall_through);
|
|
|