| Index: src/mips/full-codegen-mips.cc
|
| diff --git a/src/mips/full-codegen-mips.cc b/src/mips/full-codegen-mips.cc
|
| index a4155bc15ca96d1da32debbc9d50403c0a1b4017..87c0764b604dcc05648251a08701f6684585f742 100644
|
| --- a/src/mips/full-codegen-mips.cc
|
| +++ b/src/mips/full-codegen-mips.cc
|
| @@ -243,13 +243,13 @@ void FullCodeGenerator::Generate() {
|
| if (FLAG_harmony_scoping && info->scope()->is_global_scope()) {
|
| __ push(a1);
|
| __ Push(info->scope()->GetScopeInfo());
|
| - __ CallRuntime(Runtime::kNewGlobalContext, 2);
|
| + __ CallRuntime(Runtime::kHiddenNewGlobalContext, 2);
|
| } else if (heap_slots <= FastNewContextStub::kMaximumSlots) {
|
| FastNewContextStub stub(heap_slots);
|
| __ CallStub(&stub);
|
| } else {
|
| __ push(a1);
|
| - __ CallRuntime(Runtime::kNewFunctionContext, 1);
|
| + __ CallRuntime(Runtime::kHiddenNewFunctionContext, 1);
|
| }
|
| function_in_register = false;
|
| // Context is returned in v0. It replaces the context passed to us.
|
| @@ -877,7 +877,7 @@ void FullCodeGenerator::VisitVariableDeclaration(
|
| __ mov(a0, zero_reg); // Smi::FromInt(0) indicates no initial value.
|
| __ Push(cp, a2, a1, a0);
|
| }
|
| - __ CallRuntime(Runtime::kDeclareContextSlot, 4);
|
| + __ CallRuntime(Runtime::kHiddenDeclareContextSlot, 4);
|
| break;
|
| }
|
| }
|
| @@ -933,7 +933,7 @@ void FullCodeGenerator::VisitFunctionDeclaration(
|
| __ Push(cp, a2, a1);
|
| // Push initial value for function declaration.
|
| VisitForStackValue(declaration->fun());
|
| - __ CallRuntime(Runtime::kDeclareContextSlot, 4);
|
| + __ CallRuntime(Runtime::kHiddenDeclareContextSlot, 4);
|
| break;
|
| }
|
| }
|
| @@ -1005,7 +1005,7 @@ void FullCodeGenerator::DeclareGlobals(Handle<FixedArray> pairs) {
|
| __ li(a1, Operand(pairs));
|
| __ li(a0, Operand(Smi::FromInt(DeclareGlobalsFlags())));
|
| __ Push(cp, a1, a0);
|
| - __ CallRuntime(Runtime::kDeclareGlobals, 3);
|
| + __ CallRuntime(Runtime::kHiddenDeclareGlobals, 3);
|
| // Return value is ignored.
|
| }
|
|
|
| @@ -1013,7 +1013,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::kHiddenDeclareModules, 1);
|
| // Return value is ignored.
|
| }
|
|
|
| @@ -1372,7 +1372,7 @@ void FullCodeGenerator::EmitNewClosure(Handle<SharedFunctionInfo> info,
|
| __ LoadRoot(a1, pretenure ? Heap::kTrueValueRootIndex
|
| : Heap::kFalseValueRootIndex);
|
| __ Push(cp, a0, a1);
|
| - __ CallRuntime(Runtime::kNewClosure, 3);
|
| + __ CallRuntime(Runtime::kHiddenNewClosure, 3);
|
| }
|
| context()->Plug(v0);
|
| }
|
| @@ -1494,7 +1494,7 @@ void FullCodeGenerator::EmitDynamicLookupFastCase(Variable* var,
|
| __ Branch(done, ne, at, Operand(zero_reg));
|
| __ li(a0, Operand(var->name()));
|
| __ push(a0);
|
| - __ CallRuntime(Runtime::kThrowReferenceError, 1);
|
| + __ CallRuntime(Runtime::kHiddenThrowReferenceError, 1);
|
| }
|
| }
|
| __ Branch(done);
|
| @@ -1573,7 +1573,7 @@ void FullCodeGenerator::EmitVariableLoad(VariableProxy* proxy) {
|
| __ Branch(&done, ne, at, Operand(zero_reg));
|
| __ li(a0, Operand(var->name()));
|
| __ push(a0);
|
| - __ CallRuntime(Runtime::kThrowReferenceError, 1);
|
| + __ CallRuntime(Runtime::kHiddenThrowReferenceError, 1);
|
| __ bind(&done);
|
| } else {
|
| // Uninitalized const bindings outside of harmony mode are unholed.
|
| @@ -1598,7 +1598,7 @@ void FullCodeGenerator::EmitVariableLoad(VariableProxy* proxy) {
|
| __ bind(&slow);
|
| __ li(a1, Operand(var->name()));
|
| __ Push(cp, a1); // Context and name.
|
| - __ CallRuntime(Runtime::kLoadContextSlot, 2);
|
| + __ CallRuntime(Runtime::kHiddenLoadContextSlot, 2);
|
| __ bind(&done);
|
| context()->Plug(v0);
|
| }
|
| @@ -1630,7 +1630,7 @@ void FullCodeGenerator::VisitRegExpLiteral(RegExpLiteral* expr) {
|
| __ li(a2, Operand(expr->pattern()));
|
| __ li(a1, Operand(expr->flags()));
|
| __ Push(t0, a3, a2, a1);
|
| - __ CallRuntime(Runtime::kMaterializeRegExpLiteral, 4);
|
| + __ CallRuntime(Runtime::kHiddenMaterializeRegExpLiteral, 4);
|
| __ mov(t1, v0);
|
|
|
| __ bind(&materialized);
|
| @@ -1642,7 +1642,7 @@ void FullCodeGenerator::VisitRegExpLiteral(RegExpLiteral* expr) {
|
| __ bind(&runtime_allocate);
|
| __ li(a0, Operand(Smi::FromInt(size)));
|
| __ Push(t1, a0);
|
| - __ CallRuntime(Runtime::kAllocateInNewSpace, 1);
|
| + __ CallRuntime(Runtime::kHiddenAllocateInNewSpace, 1);
|
| __ pop(t1);
|
|
|
| __ bind(&allocated);
|
| @@ -1687,7 +1687,7 @@ void FullCodeGenerator::VisitObjectLiteral(ObjectLiteral* expr) {
|
| flags != ObjectLiteral::kFastElements ||
|
| properties_count > FastCloneShallowObjectStub::kMaximumClonedProperties) {
|
| __ Push(a3, a2, a1, a0);
|
| - __ CallRuntime(Runtime::kCreateObjectLiteral, 4);
|
| + __ CallRuntime(Runtime::kHiddenCreateObjectLiteral, 4);
|
| } else {
|
| FastCloneShallowObjectStub stub(properties_count);
|
| __ CallStub(&stub);
|
| @@ -1841,7 +1841,7 @@ void FullCodeGenerator::VisitArrayLiteral(ArrayLiteral* expr) {
|
| length > FastCloneShallowArrayStub::kMaximumClonedLength) {
|
| __ li(a0, Operand(Smi::FromInt(flags)));
|
| __ Push(a3, a2, a1, a0);
|
| - __ CallRuntime(Runtime::kCreateArrayLiteral, 4);
|
| + __ CallRuntime(Runtime::kHiddenCreateArrayLiteral, 4);
|
| } else {
|
| ASSERT(IsFastSmiOrObjectElementsKind(constant_elements_kind) ||
|
| FLAG_smi_only_arrays);
|
| @@ -2043,7 +2043,7 @@ void FullCodeGenerator::VisitYield(Yield* expr) {
|
| __ Addu(a1, fp, Operand(StandardFrameConstants::kExpressionsOffset));
|
| __ Branch(&post_runtime, eq, sp, Operand(a1));
|
| __ push(v0); // generator object
|
| - __ CallRuntime(Runtime::kSuspendJSGeneratorObject, 1);
|
| + __ CallRuntime(Runtime::kHiddenSuspendJSGeneratorObject, 1);
|
| __ lw(cp, MemOperand(fp, StandardFrameConstants::kContextOffset));
|
| __ bind(&post_runtime);
|
| __ pop(result_register());
|
| @@ -2111,7 +2111,7 @@ void FullCodeGenerator::VisitYield(Yield* expr) {
|
| __ mov(a1, cp);
|
| __ RecordWriteField(a0, JSGeneratorObject::kContextOffset, a1, a2,
|
| kRAHasBeenSaved, kDontSaveFPRegs);
|
| - __ CallRuntime(Runtime::kSuspendJSGeneratorObject, 1);
|
| + __ CallRuntime(Runtime::kHiddenSuspendJSGeneratorObject, 1);
|
| __ lw(cp, MemOperand(fp, StandardFrameConstants::kContextOffset));
|
| __ pop(v0); // result
|
| EmitReturnSequence();
|
| @@ -2166,7 +2166,7 @@ void FullCodeGenerator::EmitGeneratorResume(Expression *generator,
|
| Expression *value,
|
| JSGeneratorObject::ResumeMode resume_mode) {
|
| // The value stays in a0, and is ultimately read by the resumed generator, as
|
| - // if the CallRuntime(Runtime::kSuspendJSGeneratorObject) returned it. Or it
|
| + // if CallRuntime(Runtime::kHiddenSuspendJSGeneratorObject) returned it. Or it
|
| // is read to throw the value when the resumed generator is already closed.
|
| // a1 will hold the generator object until the activation has been resumed.
|
| VisitForStackValue(generator);
|
| @@ -2248,7 +2248,7 @@ void FullCodeGenerator::EmitGeneratorResume(Expression *generator,
|
| ASSERT(!result_register().is(a1));
|
| __ Push(a1, result_register());
|
| __ Push(Smi::FromInt(resume_mode));
|
| - __ CallRuntime(Runtime::kResumeJSGeneratorObject, 3);
|
| + __ CallRuntime(Runtime::kHiddenResumeJSGeneratorObject, 3);
|
| // Not reached: the runtime call returns elsewhere.
|
| __ stop("not-reached");
|
|
|
| @@ -2263,14 +2263,14 @@ void FullCodeGenerator::EmitGeneratorResume(Expression *generator,
|
| } else {
|
| // Throw the provided value.
|
| __ push(a0);
|
| - __ CallRuntime(Runtime::kThrow, 1);
|
| + __ CallRuntime(Runtime::kHiddenThrow, 1);
|
| }
|
| __ jmp(&done);
|
|
|
| // Throw error if we attempt to operate on a running generator.
|
| __ bind(&wrong_state);
|
| __ push(a1);
|
| - __ CallRuntime(Runtime::kThrowGeneratorStateError, 1);
|
| + __ CallRuntime(Runtime::kHiddenThrowGeneratorStateError, 1);
|
|
|
| __ bind(&done);
|
| context()->Plug(result_register());
|
| @@ -2288,7 +2288,7 @@ void FullCodeGenerator::EmitCreateIteratorResult(bool done) {
|
|
|
| __ bind(&gc_required);
|
| __ Push(Smi::FromInt(map->instance_size()));
|
| - __ CallRuntime(Runtime::kAllocateInNewSpace, 1);
|
| + __ CallRuntime(Runtime::kHiddenAllocateInNewSpace, 1);
|
| __ lw(context_register(),
|
| MemOperand(fp, StandardFrameConstants::kContextOffset));
|
|
|
| @@ -2506,7 +2506,7 @@ void FullCodeGenerator::EmitCallStoreContextSlot(
|
| __ li(a1, Operand(name));
|
| __ li(a0, Operand(Smi::FromInt(strict_mode)));
|
| __ Push(v0, cp, a1, a0); // Value, context, name, strict mode.
|
| - __ CallRuntime(Runtime::kStoreContextSlot, 4);
|
| + __ CallRuntime(Runtime::kHiddenStoreContextSlot, 4);
|
| }
|
|
|
|
|
| @@ -2524,7 +2524,7 @@ void FullCodeGenerator::EmitVariableAssignment(Variable* var, Token::Value op) {
|
| if (var->IsLookupSlot()) {
|
| __ li(a0, Operand(var->name()));
|
| __ Push(v0, cp, a0); // Context and name.
|
| - __ CallRuntime(Runtime::kInitializeConstContextSlot, 3);
|
| + __ CallRuntime(Runtime::kHiddenInitializeConstContextSlot, 3);
|
| } else {
|
| ASSERT(var->IsStackAllocated() || var->IsContextSlot());
|
| Label skip;
|
| @@ -2549,7 +2549,7 @@ void FullCodeGenerator::EmitVariableAssignment(Variable* var, Token::Value op) {
|
| __ Branch(&assign, ne, a3, Operand(t0));
|
| __ li(a3, Operand(var->name()));
|
| __ push(a3);
|
| - __ CallRuntime(Runtime::kThrowReferenceError, 1);
|
| + __ CallRuntime(Runtime::kHiddenThrowReferenceError, 1);
|
| // Perform the assignment.
|
| __ bind(&assign);
|
| EmitStoreToStackLocalOrContextSlot(var, location);
|
| @@ -2785,7 +2785,7 @@ void FullCodeGenerator::EmitResolvePossiblyDirectEval(int arg_count) {
|
|
|
| // Do the runtime call.
|
| __ Push(t2, t1, t0, a1);
|
| - __ CallRuntime(Runtime::kResolvePossiblyDirectEval, 5);
|
| + __ CallRuntime(Runtime::kHiddenResolvePossiblyDirectEval, 5);
|
| }
|
|
|
|
|
| @@ -2801,8 +2801,8 @@ void FullCodeGenerator::VisitCall(Call* expr) {
|
| Call::CallType call_type = expr->GetCallType(isolate());
|
|
|
| if (call_type == Call::POSSIBLY_EVAL_CALL) {
|
| - // In a call to eval, we first call %ResolvePossiblyDirectEval to
|
| - // resolve the function we need to call and the receiver of the
|
| + // In a call to eval, we first call RuntimeHidden_ResolvePossiblyDirectEval
|
| + // to resolve the function we need to call and the receiver of the
|
| // call. Then we call the resolved function using the given
|
| // arguments.
|
| ZoneList<Expression*>* args = expr->arguments();
|
| @@ -2857,7 +2857,7 @@ void FullCodeGenerator::VisitCall(Call* expr) {
|
| ASSERT(!context_register().is(a2));
|
| __ li(a2, Operand(proxy->name()));
|
| __ Push(context_register(), a2);
|
| - __ CallRuntime(Runtime::kLoadContextSlot, 2);
|
| + __ CallRuntime(Runtime::kHiddenLoadContextSlot, 2);
|
| __ Push(v0, v1); // Function, receiver.
|
|
|
| // If fast case code has been generated, emit code to push the
|
| @@ -3521,7 +3521,7 @@ void FullCodeGenerator::EmitDateField(CallRuntime* expr) {
|
| }
|
|
|
| __ bind(¬_date_object);
|
| - __ CallRuntime(Runtime::kThrowNotDateError, 0);
|
| + __ CallRuntime(Runtime::kHiddenThrowNotDateError, 0);
|
| __ bind(&done);
|
| context()->Plug(v0);
|
| }
|
| @@ -4283,7 +4283,7 @@ void FullCodeGenerator::VisitUnaryOperation(UnaryOperation* expr) {
|
| ASSERT(!context_register().is(a2));
|
| __ li(a2, Operand(var->name()));
|
| __ Push(context_register(), a2);
|
| - __ CallRuntime(Runtime::kDeleteContextSlot, 2);
|
| + __ CallRuntime(Runtime::kHiddenDeleteContextSlot, 2);
|
| context()->Plug(v0);
|
| }
|
| } else {
|
| @@ -4565,7 +4565,7 @@ void FullCodeGenerator::VisitForTypeofValue(Expression* expr) {
|
| __ bind(&slow);
|
| __ li(a0, Operand(proxy->name()));
|
| __ Push(cp, a0);
|
| - __ CallRuntime(Runtime::kLoadContextSlotNoReferenceError, 2);
|
| + __ CallRuntime(Runtime::kHiddenLoadContextSlotNoReferenceError, 2);
|
| PrepareForBailout(expr, TOS_REG);
|
| __ bind(&done);
|
|
|
|
|