From 9be61ddb8a0b2c9e9e23a596cf5f433adb8e4172 Mon Sep 17 00:00:00 2001 From: "yangguo@chromium.org" Date: Wed, 26 Mar 2014 15:51:48 +0000 Subject: [PATCH] Hide some runtime functions. R=dslomov@chromium.org Review URL: https://codereview.chromium.org/212163004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20285 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 --- src/arm/builtins-arm.cc | 18 ++--- src/arm/code-stubs-arm.cc | 19 +++--- src/arm/full-codegen-arm.cc | 62 ++++++++--------- src/arm/lithium-codegen-arm.cc | 24 +++---- src/arm/macro-assembler-arm.cc | 6 +- src/arm64/builtins-arm64.cc | 20 +++--- src/arm64/code-stubs-arm64.cc | 19 +++--- src/arm64/full-codegen-arm64.cc | 62 ++++++++--------- src/arm64/lithium-codegen-arm64.cc | 24 +++---- src/arm64/macro-assembler-arm64.cc | 7 +- src/builtins.cc | 4 +- src/full-codegen.cc | 16 ++--- src/hydrogen-instructions.h | 2 +- src/hydrogen.cc | 8 +-- src/ia32/builtins-ia32.cc | 18 ++--- src/ia32/code-stubs-ia32.cc | 19 +++--- src/ia32/full-codegen-ia32.cc | 62 ++++++++--------- src/ia32/lithium-codegen-ia32.cc | 24 +++---- src/ia32/macro-assembler-ia32.cc | 6 +- src/mips/builtins-mips.cc | 18 ++--- src/mips/code-stubs-mips.cc | 19 +++--- src/mips/full-codegen-mips.cc | 62 ++++++++--------- src/mips/lithium-codegen-mips.cc | 24 +++---- src/mips/macro-assembler-mips.cc | 6 +- src/parser.cc | 6 +- src/runtime.cc | 122 +++++++++++++++------------------ src/runtime.h | 134 ++++++++++++++++++++----------------- src/serialize.cc | 5 +- src/x64/builtins-x64.cc | 18 ++--- src/x64/code-stubs-x64.cc | 19 +++--- src/x64/full-codegen-x64.cc | 62 ++++++++--------- src/x64/lithium-codegen-x64.cc | 24 +++---- src/x64/macro-assembler-x64.cc | 6 +- test/mjsunit/fuzz-natives-part1.js | 27 +------- test/mjsunit/fuzz-natives-part2.js | 28 +------- test/mjsunit/fuzz-natives-part3.js | 29 +------- test/mjsunit/fuzz-natives-part4.js | 27 +------- 37 files changed, 478 insertions(+), 578 deletions(-) diff --git a/src/arm/builtins-arm.cc b/src/arm/builtins-arm.cc index 6c8f392..f138146 100644 --- a/src/arm/builtins-arm.cc +++ b/src/arm/builtins-arm.cc @@ -326,7 +326,7 @@ void Builtins::Generate_InOptimizationQueue(MacroAssembler* masm) { __ cmp(sp, Operand(ip)); __ b(hs, &ok); - CallRuntimePassFunction(masm, Runtime::kTryInstallOptimizedCode); + CallRuntimePassFunction(masm, Runtime::kHiddenTryInstallOptimizedCode); GenerateTailCallToReturnedCode(masm); __ bind(&ok); @@ -415,7 +415,7 @@ static void Generate_JSConstructStubHelper(MacroAssembler* masm, __ Push(r2, r1); // r1 = constructor // The call will replace the stub, so the countdown is only done once. - __ CallRuntime(Runtime::kFinalizeInstanceSize, 1); + __ CallRuntime(Runtime::kHiddenFinalizeInstanceSize, 1); __ pop(r2); __ pop(r1); @@ -598,9 +598,9 @@ static void Generate_JSConstructStubHelper(MacroAssembler* masm, __ push(r1); // argument for Runtime_NewObject if (create_memento) { - __ CallRuntime(Runtime::kNewObjectWithAllocationSite, 2); + __ CallRuntime(Runtime::kHiddenNewObjectWithAllocationSite, 2); } else { - __ CallRuntime(Runtime::kNewObject, 1); + __ CallRuntime(Runtime::kHiddenNewObject, 1); } __ mov(r4, r0); @@ -834,7 +834,7 @@ void Builtins::Generate_JSConstructEntryTrampoline(MacroAssembler* masm) { void Builtins::Generate_CompileUnoptimized(MacroAssembler* masm) { - CallRuntimePassFunction(masm, Runtime::kCompileUnoptimized); + CallRuntimePassFunction(masm, Runtime::kHiddenCompileUnoptimized); GenerateTailCallToReturnedCode(masm); } @@ -848,7 +848,7 @@ static void CallCompileOptimized(MacroAssembler* masm, bool concurrent) { // Whether to compile in a background thread. __ Push(masm->isolate()->factory()->ToBoolean(concurrent)); - __ CallRuntime(Runtime::kCompileOptimized, 2); + __ CallRuntime(Runtime::kHiddenCompileOptimized, 2); // Restore receiver. __ pop(r1); } @@ -943,7 +943,7 @@ static void Generate_NotifyStubFailureHelper(MacroAssembler* masm, // registers. __ stm(db_w, sp, kJSCallerSaved | kCalleeSaved); // Pass the function and deoptimization type to the runtime system. - __ CallRuntime(Runtime::kNotifyStubFailure, 0, save_doubles); + __ CallRuntime(Runtime::kHiddenNotifyStubFailure, 0, save_doubles); __ ldm(ia_w, sp, kJSCallerSaved | kCalleeSaved); } @@ -969,7 +969,7 @@ static void Generate_NotifyDeoptimizedHelper(MacroAssembler* masm, // Pass the function and deoptimization type to the runtime system. __ mov(r0, Operand(Smi::FromInt(static_cast(type)))); __ push(r0); - __ CallRuntime(Runtime::kNotifyDeoptimized, 1); + __ CallRuntime(Runtime::kHiddenNotifyDeoptimized, 1); } // Get the full codegen state from the stack and untag it -> r6. @@ -1060,7 +1060,7 @@ void Builtins::Generate_OsrAfterStackCheck(MacroAssembler* masm) { __ b(hs, &ok); { FrameAndConstantPoolScope scope(masm, StackFrame::INTERNAL); - __ CallRuntime(Runtime::kStackGuard, 0); + __ CallRuntime(Runtime::kHiddenStackGuard, 0); } __ Jump(masm->isolate()->builtins()->OnStackReplacement(), RelocInfo::CODE_TARGET); diff --git a/src/arm/code-stubs-arm.cc b/src/arm/code-stubs-arm.cc index cfea99a..fe2095a 100644 --- a/src/arm/code-stubs-arm.cc +++ b/src/arm/code-stubs-arm.cc @@ -45,7 +45,7 @@ void FastNewClosureStub::InitializeInterfaceDescriptor( descriptor->register_param_count_ = 1; descriptor->register_params_ = registers; descriptor->deoptimization_handler_ = - Runtime::FunctionForId(Runtime::kNewClosureFromStubFailure)->entry; + Runtime::FunctionForId(Runtime::kHiddenNewClosureFromStubFailure)->entry; } @@ -87,7 +87,8 @@ void FastCloneShallowArrayStub::InitializeInterfaceDescriptor( descriptor->register_param_count_ = 3; descriptor->register_params_ = registers; descriptor->deoptimization_handler_ = - Runtime::FunctionForId(Runtime::kCreateArrayLiteralStubBailout)->entry; + Runtime::FunctionForId( + Runtime::kHiddenCreateArrayLiteralStubBailout)->entry; } @@ -98,7 +99,7 @@ void FastCloneShallowObjectStub::InitializeInterfaceDescriptor( descriptor->register_param_count_ = 4; descriptor->register_params_ = registers; descriptor->deoptimization_handler_ = - Runtime::FunctionForId(Runtime::kCreateObjectLiteral)->entry; + Runtime::FunctionForId(Runtime::kHiddenCreateObjectLiteral)->entry; } @@ -246,7 +247,7 @@ static void InitializeArrayConstructorDescriptor( descriptor->hint_stack_parameter_count_ = constant_stack_parameter_count; descriptor->function_mode_ = JS_FUNCTION_STUB_MODE; descriptor->deoptimization_handler_ = - Runtime::FunctionForId(Runtime::kArrayConstructor)->entry; + Runtime::FunctionForId(Runtime::kHiddenArrayConstructor)->entry; } @@ -274,7 +275,7 @@ static void InitializeInternalArrayConstructorDescriptor( descriptor->hint_stack_parameter_count_ = constant_stack_parameter_count; descriptor->function_mode_ = JS_FUNCTION_STUB_MODE; descriptor->deoptimization_handler_ = - Runtime::FunctionForId(Runtime::kInternalArrayConstructor)->entry; + Runtime::FunctionForId(Runtime::kHiddenInternalArrayConstructor)->entry; } @@ -2148,7 +2149,7 @@ void ArgumentsAccessStub::GenerateNewSloppySlow(MacroAssembler* masm) { __ str(r3, MemOperand(sp, 1 * kPointerSize)); __ bind(&runtime); - __ TailCallRuntime(Runtime::kNewArgumentsFast, 3, 1); + __ TailCallRuntime(Runtime::kHiddenNewArgumentsFast, 3, 1); } @@ -2352,7 +2353,7 @@ void ArgumentsAccessStub::GenerateNewSloppyFast(MacroAssembler* masm) { // r2 = argument count (tagged) __ bind(&runtime); __ str(r2, MemOperand(sp, 0 * kPointerSize)); // Patch argument count. - __ TailCallRuntime(Runtime::kNewArgumentsFast, 3, 1); + __ TailCallRuntime(Runtime::kHiddenNewArgumentsFast, 3, 1); } @@ -2446,7 +2447,7 @@ void ArgumentsAccessStub::GenerateNewStrict(MacroAssembler* masm) { // Do the runtime call to allocate the arguments object. __ bind(&runtime); - __ TailCallRuntime(Runtime::kNewStrictArgumentsFast, 3, 1); + __ TailCallRuntime(Runtime::kHiddenNewStrictArgumentsFast, 3, 1); } @@ -3203,7 +3204,7 @@ void StringCharCodeAtGenerator::GenerateSlow( } else { ASSERT(index_flags_ == STRING_INDEX_IS_ARRAY_INDEX); // NumberToSmi discards numbers that are not exact integers. - __ CallRuntime(Runtime::kNumberToSmi, 1); + __ CallRuntime(Runtime::kHiddenNumberToSmi, 1); } // Save the conversion result before the pop instructions below // have a chance to overwrite it. diff --git a/src/arm/full-codegen-arm.cc b/src/arm/full-codegen-arm.cc index 8b0a715..b5ec2d5 100644 --- a/src/arm/full-codegen-arm.cc +++ b/src/arm/full-codegen-arm.cc @@ -234,13 +234,13 @@ void FullCodeGenerator::Generate() { if (FLAG_harmony_scoping && info->scope()->is_global_scope()) { __ push(r1); __ 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(r1); - __ CallRuntime(Runtime::kNewFunctionContext, 1); + __ CallRuntime(Runtime::kHiddenNewFunctionContext, 1); } function_in_register = false; // Context is returned in r0. It replaces the context passed to us. @@ -861,7 +861,7 @@ void FullCodeGenerator::VisitVariableDeclaration( __ mov(r0, Operand(Smi::FromInt(0))); // Indicates no initial value. __ Push(cp, r2, r1, r0); } - __ CallRuntime(Runtime::kDeclareContextSlot, 4); + __ CallRuntime(Runtime::kHiddenDeclareContextSlot, 4); break; } } @@ -917,7 +917,7 @@ void FullCodeGenerator::VisitFunctionDeclaration( __ Push(cp, r2, r1); // Push initial value for function declaration. VisitForStackValue(declaration->fun()); - __ CallRuntime(Runtime::kDeclareContextSlot, 4); + __ CallRuntime(Runtime::kHiddenDeclareContextSlot, 4); break; } } @@ -989,7 +989,7 @@ void FullCodeGenerator::DeclareGlobals(Handle pairs) { __ mov(r1, Operand(pairs)); __ mov(r0, Operand(Smi::FromInt(DeclareGlobalsFlags()))); __ Push(cp, r1, r0); - __ CallRuntime(Runtime::kDeclareGlobals, 3); + __ CallRuntime(Runtime::kHiddenDeclareGlobals, 3); // Return value is ignored. } @@ -997,7 +997,7 @@ void FullCodeGenerator::DeclareGlobals(Handle pairs) { void FullCodeGenerator::DeclareModules(Handle descriptions) { // Call the runtime to declare the modules. __ Push(descriptions); - __ CallRuntime(Runtime::kDeclareModules, 1); + __ CallRuntime(Runtime::kHiddenDeclareModules, 1); // Return value is ignored. } @@ -1359,7 +1359,7 @@ void FullCodeGenerator::EmitNewClosure(Handle info, __ LoadRoot(r1, pretenure ? Heap::kTrueValueRootIndex : Heap::kFalseValueRootIndex); __ Push(cp, r0, r1); - __ CallRuntime(Runtime::kNewClosure, 3); + __ CallRuntime(Runtime::kHiddenNewClosure, 3); } context()->Plug(r0); } @@ -1484,7 +1484,7 @@ void FullCodeGenerator::EmitDynamicLookupFastCase(Variable* var, __ b(ne, done); __ mov(r0, Operand(var->name())); __ push(r0); - __ CallRuntime(Runtime::kThrowReferenceError, 1); + __ CallRuntime(Runtime::kHiddenThrowReferenceError, 1); } } __ jmp(done); @@ -1562,7 +1562,7 @@ void FullCodeGenerator::EmitVariableLoad(VariableProxy* proxy) { __ b(ne, &done); __ mov(r0, Operand(var->name())); __ push(r0); - __ CallRuntime(Runtime::kThrowReferenceError, 1); + __ CallRuntime(Runtime::kHiddenThrowReferenceError, 1); __ bind(&done); } else { // Uninitalized const bindings outside of harmony mode are unholed. @@ -1586,7 +1586,7 @@ void FullCodeGenerator::EmitVariableLoad(VariableProxy* proxy) { __ bind(&slow); __ mov(r1, Operand(var->name())); __ Push(cp, r1); // Context and name. - __ CallRuntime(Runtime::kLoadContextSlot, 2); + __ CallRuntime(Runtime::kHiddenLoadContextSlot, 2); __ bind(&done); context()->Plug(r0); } @@ -1619,7 +1619,7 @@ void FullCodeGenerator::VisitRegExpLiteral(RegExpLiteral* expr) { __ mov(r2, Operand(expr->pattern())); __ mov(r1, Operand(expr->flags())); __ Push(r4, r3, r2, r1); - __ CallRuntime(Runtime::kMaterializeRegExpLiteral, 4); + __ CallRuntime(Runtime::kHiddenMaterializeRegExpLiteral, 4); __ mov(r5, r0); __ bind(&materialized); @@ -1631,7 +1631,7 @@ void FullCodeGenerator::VisitRegExpLiteral(RegExpLiteral* expr) { __ bind(&runtime_allocate); __ mov(r0, Operand(Smi::FromInt(size))); __ Push(r5, r0); - __ CallRuntime(Runtime::kAllocateInNewSpace, 1); + __ CallRuntime(Runtime::kHiddenAllocateInNewSpace, 1); __ pop(r5); __ bind(&allocated); @@ -1675,7 +1675,7 @@ void FullCodeGenerator::VisitObjectLiteral(ObjectLiteral* expr) { flags != ObjectLiteral::kFastElements || properties_count > FastCloneShallowObjectStub::kMaximumClonedProperties) { __ Push(r3, r2, r1, r0); - __ CallRuntime(Runtime::kCreateObjectLiteral, 4); + __ CallRuntime(Runtime::kHiddenCreateObjectLiteral, 4); } else { FastCloneShallowObjectStub stub(properties_count); __ CallStub(&stub); @@ -1826,7 +1826,7 @@ void FullCodeGenerator::VisitArrayLiteral(ArrayLiteral* expr) { length > FastCloneShallowArrayStub::kMaximumClonedLength) { __ mov(r0, Operand(Smi::FromInt(flags))); __ Push(r3, r2, r1, r0); - __ CallRuntime(Runtime::kCreateArrayLiteral, 4); + __ CallRuntime(Runtime::kHiddenCreateArrayLiteral, 4); } else { ASSERT(IsFastSmiOrObjectElementsKind(constant_elements_kind) || FLAG_smi_only_arrays); @@ -2027,7 +2027,7 @@ void FullCodeGenerator::VisitYield(Yield* expr) { __ cmp(sp, r1); __ b(eq, &post_runtime); __ push(r0); // generator object - __ CallRuntime(Runtime::kSuspendJSGeneratorObject, 1); + __ CallRuntime(Runtime::kHiddenSuspendJSGeneratorObject, 1); __ ldr(cp, MemOperand(fp, StandardFrameConstants::kContextOffset)); __ bind(&post_runtime); __ pop(result_register()); @@ -2093,7 +2093,7 @@ void FullCodeGenerator::VisitYield(Yield* expr) { __ mov(r1, cp); __ RecordWriteField(r0, JSGeneratorObject::kContextOffset, r1, r2, kLRHasBeenSaved, kDontSaveFPRegs); - __ CallRuntime(Runtime::kSuspendJSGeneratorObject, 1); + __ CallRuntime(Runtime::kHiddenSuspendJSGeneratorObject, 1); __ ldr(cp, MemOperand(fp, StandardFrameConstants::kContextOffset)); __ pop(r0); // result EmitReturnSequence(); @@ -2145,7 +2145,7 @@ void FullCodeGenerator::EmitGeneratorResume(Expression *generator, Expression *value, JSGeneratorObject::ResumeMode resume_mode) { // The value stays in r0, 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. // r1 will hold the generator object until the activation has been resumed. VisitForStackValue(generator); @@ -2239,7 +2239,7 @@ void FullCodeGenerator::EmitGeneratorResume(Expression *generator, ASSERT(!result_register().is(r1)); __ Push(r1, 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"); @@ -2254,14 +2254,14 @@ void FullCodeGenerator::EmitGeneratorResume(Expression *generator, } else { // Throw the provided value. __ push(r0); - __ 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(r1); - __ CallRuntime(Runtime::kThrowGeneratorStateError, 1); + __ CallRuntime(Runtime::kHiddenThrowGeneratorStateError, 1); __ bind(&done); context()->Plug(result_register()); @@ -2279,7 +2279,7 @@ void FullCodeGenerator::EmitCreateIteratorResult(bool done) { __ bind(&gc_required); __ Push(Smi::FromInt(map->instance_size())); - __ CallRuntime(Runtime::kAllocateInNewSpace, 1); + __ CallRuntime(Runtime::kHiddenAllocateInNewSpace, 1); __ ldr(context_register(), MemOperand(fp, StandardFrameConstants::kContextOffset)); @@ -2493,7 +2493,7 @@ void FullCodeGenerator::EmitCallStoreContextSlot( __ mov(r1, Operand(name)); __ mov(r0, Operand(Smi::FromInt(strict_mode))); __ Push(cp, r1, r0); // Context, name, strict mode. - __ CallRuntime(Runtime::kStoreContextSlot, 4); + __ CallRuntime(Runtime::kHiddenStoreContextSlot, 4); } @@ -2511,7 +2511,7 @@ void FullCodeGenerator::EmitVariableAssignment(Variable* var, Token::Value op) { __ push(r0); __ mov(r0, Operand(var->name())); __ Push(cp, r0); // Context and name. - __ CallRuntime(Runtime::kInitializeConstContextSlot, 3); + __ CallRuntime(Runtime::kHiddenInitializeConstContextSlot, 3); } else { ASSERT(var->IsStackAllocated() || var->IsContextSlot()); Label skip; @@ -2536,7 +2536,7 @@ void FullCodeGenerator::EmitVariableAssignment(Variable* var, Token::Value op) { __ b(ne, &assign); __ mov(r3, Operand(var->name())); __ push(r3); - __ CallRuntime(Runtime::kThrowReferenceError, 1); + __ CallRuntime(Runtime::kHiddenThrowReferenceError, 1); // Perform the assignment. __ bind(&assign); EmitStoreToStackLocalOrContextSlot(var, location); @@ -2769,7 +2769,7 @@ void FullCodeGenerator::EmitResolvePossiblyDirectEval(int arg_count) { // Do the runtime call. __ Push(r4, r3, r2, r1); - __ CallRuntime(Runtime::kResolvePossiblyDirectEval, 5); + __ CallRuntime(Runtime::kHiddenResolvePossiblyDirectEval, 5); } @@ -2785,8 +2785,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* args = expr->arguments(); @@ -2843,7 +2843,7 @@ void FullCodeGenerator::VisitCall(Call* expr) { ASSERT(!context_register().is(r2)); __ mov(r2, Operand(proxy->name())); __ Push(context_register(), r2); - __ CallRuntime(Runtime::kLoadContextSlot, 2); + __ CallRuntime(Runtime::kHiddenLoadContextSlot, 2); __ Push(r0, r1); // Function, receiver. // If fast case code has been generated, emit code to push the @@ -3498,7 +3498,7 @@ void FullCodeGenerator::EmitDateField(CallRuntime* expr) { } __ bind(¬_date_object); - __ CallRuntime(Runtime::kThrowNotDateError, 0); + __ CallRuntime(Runtime::kHiddenThrowNotDateError, 0); __ bind(&done); context()->Plug(r0); } @@ -4235,7 +4235,7 @@ void FullCodeGenerator::VisitUnaryOperation(UnaryOperation* expr) { ASSERT(!context_register().is(r2)); __ mov(r2, Operand(var->name())); __ Push(context_register(), r2); - __ CallRuntime(Runtime::kDeleteContextSlot, 2); + __ CallRuntime(Runtime::kHiddenDeleteContextSlot, 2); context()->Plug(r0); } } else { @@ -4512,7 +4512,7 @@ void FullCodeGenerator::VisitForTypeofValue(Expression* expr) { __ bind(&slow); __ mov(r0, Operand(proxy->name())); __ Push(cp, r0); - __ CallRuntime(Runtime::kLoadContextSlotNoReferenceError, 2); + __ CallRuntime(Runtime::kHiddenLoadContextSlotNoReferenceError, 2); PrepareForBailout(expr, TOS_REG); __ bind(&done); diff --git a/src/arm/lithium-codegen-arm.cc b/src/arm/lithium-codegen-arm.cc index 9f27b16..7152ba2 100644 --- a/src/arm/lithium-codegen-arm.cc +++ b/src/arm/lithium-codegen-arm.cc @@ -211,7 +211,7 @@ bool LCodeGen::GeneratePrologue() { __ CallStub(&stub); } else { __ push(r1); - __ CallRuntime(Runtime::kNewFunctionContext, 1); + __ CallRuntime(Runtime::kHiddenNewFunctionContext, 1); } RecordSafepoint(Safepoint::kNoLazyDeopt); // Context is returned in both r0 and cp. It replaces the context @@ -3539,7 +3539,7 @@ void LCodeGen::DoDeclareGlobals(LDeclareGlobals* instr) { __ push(scratch0()); __ mov(scratch0(), Operand(Smi::FromInt(instr->hydrogen()->flags()))); __ push(scratch0()); - CallRuntime(Runtime::kDeclareGlobals, 3, instr); + CallRuntime(Runtime::kHiddenDeclareGlobals, 3, instr); } @@ -3630,7 +3630,7 @@ void LCodeGen::DoDeferredMathAbsTaggedHeapNumber(LMathAbs* instr) { // Slow case: Call the runtime system to do the number allocation. __ bind(&slow); - CallRuntimeFromDeferred(Runtime::kAllocateHeapNumber, 0, instr, + CallRuntimeFromDeferred(Runtime::kHiddenAllocateHeapNumber, 0, instr, instr->context()); // Set the pointer to the new heap number in tmp. if (!tmp1.is(r0)) __ mov(tmp1, Operand(r0)); @@ -4650,11 +4650,11 @@ void LCodeGen::DoDeferredNumberTagIU(LInstruction* instr, // NumberTagI and NumberTagD use the context from the frame, rather than // the environment's HContext or HInlinedContext value. - // They only call Runtime::kAllocateHeapNumber. + // They only call Runtime::kHiddenAllocateHeapNumber. // The corresponding HChange instructions are added in a phase that does // not have easy access to the local context. __ ldr(cp, MemOperand(fp, StandardFrameConstants::kContextOffset)); - __ CallRuntimeSaveDoubles(Runtime::kAllocateHeapNumber); + __ CallRuntimeSaveDoubles(Runtime::kHiddenAllocateHeapNumber); RecordSafepointWithRegisters( instr->pointer_map(), 0, Safepoint::kNoLazyDeopt); __ sub(r0, r0, Operand(kHeapObjectTag)); @@ -4714,11 +4714,11 @@ void LCodeGen::DoDeferredNumberTagD(LNumberTagD* instr) { PushSafepointRegistersScope scope(this, Safepoint::kWithRegisters); // NumberTagI and NumberTagD use the context from the frame, rather than // the environment's HContext or HInlinedContext value. - // They only call Runtime::kAllocateHeapNumber. + // They only call Runtime::kHiddenAllocateHeapNumber. // The corresponding HChange instructions are added in a phase that does // not have easy access to the local context. __ ldr(cp, MemOperand(fp, StandardFrameConstants::kContextOffset)); - __ CallRuntimeSaveDoubles(Runtime::kAllocateHeapNumber); + __ CallRuntimeSaveDoubles(Runtime::kHiddenAllocateHeapNumber); RecordSafepointWithRegisters( instr->pointer_map(), 0, Safepoint::kNoLazyDeopt); __ sub(r0, r0, Operand(kHeapObjectTag)); @@ -5319,7 +5319,7 @@ void LCodeGen::DoDeferredAllocate(LAllocate* instr) { __ Push(Smi::FromInt(flags)); CallRuntimeFromDeferred( - Runtime::kAllocateInTargetSpace, 2, instr, instr->context()); + Runtime::kHiddenAllocateInTargetSpace, 2, instr, instr->context()); __ StoreToSafepointRegisterSlot(r0, result); } @@ -5353,7 +5353,7 @@ void LCodeGen::DoRegExpLiteral(LRegExpLiteral* instr) { __ mov(r4, Operand(instr->hydrogen()->pattern())); __ mov(r3, Operand(instr->hydrogen()->flags())); __ Push(r6, r5, r4, r3); - CallRuntime(Runtime::kMaterializeRegExpLiteral, 4, instr); + CallRuntime(Runtime::kHiddenMaterializeRegExpLiteral, 4, instr); __ mov(r1, r0); __ bind(&materialized); @@ -5366,7 +5366,7 @@ void LCodeGen::DoRegExpLiteral(LRegExpLiteral* instr) { __ bind(&runtime_allocate); __ mov(r0, Operand(Smi::FromInt(size))); __ Push(r1, r0); - CallRuntime(Runtime::kAllocateInNewSpace, 1, instr); + CallRuntime(Runtime::kHiddenAllocateInNewSpace, 1, instr); __ pop(r1); __ bind(&allocated); @@ -5390,7 +5390,7 @@ void LCodeGen::DoFunctionLiteral(LFunctionLiteral* instr) { __ mov(r1, Operand(pretenure ? factory()->true_value() : factory()->false_value())); __ Push(cp, r2, r1); - CallRuntime(Runtime::kNewClosure, 3, instr); + CallRuntime(Runtime::kHiddenNewClosure, 3, instr); } } @@ -5575,7 +5575,7 @@ void LCodeGen::DoDummyUse(LDummyUse* instr) { void LCodeGen::DoDeferredStackCheck(LStackCheck* instr) { PushSafepointRegistersScope scope(this, Safepoint::kWithRegisters); LoadContextFromDeferred(instr->context()); - __ CallRuntimeSaveDoubles(Runtime::kStackGuard); + __ CallRuntimeSaveDoubles(Runtime::kHiddenStackGuard); RecordSafepointWithLazyDeopt( instr, RECORD_SAFEPOINT_WITH_REGISTERS_AND_NO_ARGUMENTS); ASSERT(instr->HasEnvironment()); diff --git a/src/arm/macro-assembler-arm.cc b/src/arm/macro-assembler-arm.cc index 3121d4a..2bfe09f 100644 --- a/src/arm/macro-assembler-arm.cc +++ b/src/arm/macro-assembler-arm.cc @@ -2432,7 +2432,7 @@ void MacroAssembler::CallApiFunctionAndReturn( { FrameScope frame(this, StackFrame::INTERNAL); CallExternalReference( - ExternalReference(Runtime::kPromoteScheduledException, isolate()), + ExternalReference(Runtime::kHiddenPromoteScheduledException, isolate()), 0); } jmp(&exception_handled); @@ -3846,9 +3846,9 @@ void MacroAssembler::Throw(BailoutReason reason) { // We don't actually want to generate a pile of code for this, so just // claim there is a stack frame, without generating one. FrameScope scope(this, StackFrame::NONE); - CallRuntime(Runtime::kThrowMessage, 1); + CallRuntime(Runtime::kHiddenThrowMessage, 1); } else { - CallRuntime(Runtime::kThrowMessage, 1); + CallRuntime(Runtime::kHiddenThrowMessage, 1); } // will not return here if (is_const_pool_blocked()) { diff --git a/src/arm64/builtins-arm64.cc b/src/arm64/builtins-arm64.cc index 87ae660..01ac4cc 100644 --- a/src/arm64/builtins-arm64.cc +++ b/src/arm64/builtins-arm64.cc @@ -317,7 +317,7 @@ void Builtins::Generate_InOptimizationQueue(MacroAssembler* masm) { __ CompareRoot(masm->StackPointer(), Heap::kStackLimitRootIndex); __ B(hs, &ok); - CallRuntimePassFunction(masm, Runtime::kTryInstallOptimizedCode); + CallRuntimePassFunction(masm, Runtime::kHiddenTryInstallOptimizedCode); GenerateTailCallToReturnedCode(masm); __ Bind(&ok); @@ -407,7 +407,7 @@ static void Generate_JSConstructStubHelper(MacroAssembler* masm, // as argument to the runtime call. __ Push(constructor, init_map, constructor); // The call will replace the stub, so the countdown is only done once. - __ CallRuntime(Runtime::kFinalizeInstanceSize, 1); + __ CallRuntime(Runtime::kHiddenFinalizeInstanceSize, 1); __ Pop(init_map, constructor); __ Bind(&allocate); } @@ -566,7 +566,7 @@ static void Generate_JSConstructStubHelper(MacroAssembler* masm, __ Peek(x4, 2 * kXRegSize); __ Push(x4); __ Push(constructor); // Argument for Runtime_NewObject. - __ CallRuntime(Runtime::kNewObjectWithAllocationSite, 2); + __ CallRuntime(Runtime::kHiddenNewObjectWithAllocationSite, 2); __ Mov(x4, x0); // If we ended up using the runtime, and we want a memento, then the // runtime call made it for us, and we shouldn't do create count @@ -574,7 +574,7 @@ static void Generate_JSConstructStubHelper(MacroAssembler* masm, __ jmp(&count_incremented); } else { __ Push(constructor); // Argument for Runtime_NewObject. - __ CallRuntime(Runtime::kNewObject, 1); + __ CallRuntime(Runtime::kHiddenNewObject, 1); __ Mov(x4, x0); } @@ -811,7 +811,7 @@ void Builtins::Generate_JSConstructEntryTrampoline(MacroAssembler* masm) { void Builtins::Generate_CompileUnoptimized(MacroAssembler* masm) { - CallRuntimePassFunction(masm, Runtime::kCompileUnoptimized); + CallRuntimePassFunction(masm, Runtime::kHiddenCompileUnoptimized); GenerateTailCallToReturnedCode(masm); } @@ -821,11 +821,11 @@ static void CallCompileOptimized(MacroAssembler* masm, bool concurrent) { Register function = x1; // Preserve function. At the same time, push arguments for - // kCompileOptimized. + // kHiddenCompileOptimized. __ LoadObject(x10, masm->isolate()->factory()->ToBoolean(concurrent)); __ Push(function, function, x10); - __ CallRuntime(Runtime::kCompileOptimized, 2); + __ CallRuntime(Runtime::kHiddenCompileOptimized, 2); // Restore receiver. __ Pop(function); @@ -935,7 +935,7 @@ static void Generate_NotifyStubFailureHelper(MacroAssembler* masm, // preserve the registers with parameters. __ PushXRegList(kSafepointSavedRegisters); // Pass the function and deoptimization type to the runtime system. - __ CallRuntime(Runtime::kNotifyStubFailure, 0, save_doubles); + __ CallRuntime(Runtime::kHiddenNotifyStubFailure, 0, save_doubles); __ PopXRegList(kSafepointSavedRegisters); } @@ -965,7 +965,7 @@ static void Generate_NotifyDeoptimizedHelper(MacroAssembler* masm, // Pass the deoptimization type to the runtime system. __ Mov(x0, Smi::FromInt(static_cast(type))); __ Push(x0); - __ CallRuntime(Runtime::kNotifyDeoptimized, 1); + __ CallRuntime(Runtime::kHiddenNotifyDeoptimized, 1); } // Get the full codegen state from the stack and untag it. @@ -1050,7 +1050,7 @@ void Builtins::Generate_OsrAfterStackCheck(MacroAssembler* masm) { __ B(hs, &ok); { FrameScope scope(masm, StackFrame::INTERNAL); - __ CallRuntime(Runtime::kStackGuard, 0); + __ CallRuntime(Runtime::kHiddenStackGuard, 0); } __ Jump(masm->isolate()->builtins()->OnStackReplacement(), RelocInfo::CODE_TARGET); diff --git a/src/arm64/code-stubs-arm64.cc b/src/arm64/code-stubs-arm64.cc index 53c4a77..b6411d9 100644 --- a/src/arm64/code-stubs-arm64.cc +++ b/src/arm64/code-stubs-arm64.cc @@ -46,7 +46,7 @@ void FastNewClosureStub::InitializeInterfaceDescriptor( descriptor->register_param_count_ = sizeof(registers) / sizeof(registers[0]); descriptor->register_params_ = registers; descriptor->deoptimization_handler_ = - Runtime::FunctionForId(Runtime::kNewClosureFromStubFailure)->entry; + Runtime::FunctionForId(Runtime::kHiddenNewClosureFromStubFailure)->entry; } @@ -94,7 +94,8 @@ void FastCloneShallowArrayStub::InitializeInterfaceDescriptor( descriptor->register_param_count_ = sizeof(registers) / sizeof(registers[0]); descriptor->register_params_ = registers; descriptor->deoptimization_handler_ = - Runtime::FunctionForId(Runtime::kCreateArrayLiteralStubBailout)->entry; + Runtime::FunctionForId( + Runtime::kHiddenCreateArrayLiteralStubBailout)->entry; } @@ -109,7 +110,7 @@ void FastCloneShallowObjectStub::InitializeInterfaceDescriptor( descriptor->register_param_count_ = sizeof(registers) / sizeof(registers[0]); descriptor->register_params_ = registers; descriptor->deoptimization_handler_ = - Runtime::FunctionForId(Runtime::kCreateObjectLiteral)->entry; + Runtime::FunctionForId(Runtime::kHiddenCreateObjectLiteral)->entry; } @@ -275,7 +276,7 @@ static void InitializeArrayConstructorDescriptor( descriptor->hint_stack_parameter_count_ = constant_stack_parameter_count; descriptor->function_mode_ = JS_FUNCTION_STUB_MODE; descriptor->deoptimization_handler_ = - Runtime::FunctionForId(Runtime::kArrayConstructor)->entry; + Runtime::FunctionForId(Runtime::kHiddenArrayConstructor)->entry; } @@ -325,7 +326,7 @@ static void InitializeInternalArrayConstructorDescriptor( descriptor->hint_stack_parameter_count_ = constant_stack_parameter_count; descriptor->function_mode_ = JS_FUNCTION_STUB_MODE; descriptor->deoptimization_handler_ = - Runtime::FunctionForId(Runtime::kInternalArrayConstructor)->entry; + Runtime::FunctionForId(Runtime::kHiddenInternalArrayConstructor)->entry; } @@ -2248,7 +2249,7 @@ void ArgumentsAccessStub::GenerateNewSloppySlow(MacroAssembler* masm) { __ Poke(x10, 1 * kXRegSize); __ Bind(&runtime); - __ TailCallRuntime(Runtime::kNewArgumentsFast, 3, 1); + __ TailCallRuntime(Runtime::kHiddenNewArgumentsFast, 3, 1); } @@ -2520,7 +2521,7 @@ void ArgumentsAccessStub::GenerateNewSloppyFast(MacroAssembler* masm) { // Do the runtime call to allocate the arguments object. __ Bind(&runtime); __ Push(function, recv_arg, arg_count_smi); - __ TailCallRuntime(Runtime::kNewArgumentsFast, 3, 1); + __ TailCallRuntime(Runtime::kHiddenNewArgumentsFast, 3, 1); } @@ -2653,7 +2654,7 @@ void ArgumentsAccessStub::GenerateNewStrict(MacroAssembler* masm) { // Do the runtime call to allocate the arguments object. __ Bind(&runtime); __ Push(function, params, param_count_smi); - __ TailCallRuntime(Runtime::kNewStrictArgumentsFast, 3, 1); + __ TailCallRuntime(Runtime::kHiddenNewStrictArgumentsFast, 3, 1); } @@ -3527,7 +3528,7 @@ void StringCharCodeAtGenerator::GenerateSlow( } else { ASSERT(index_flags_ == STRING_INDEX_IS_ARRAY_INDEX); // NumberToSmi discards numbers that are not exact integers. - __ CallRuntime(Runtime::kNumberToSmi, 1); + __ CallRuntime(Runtime::kHiddenNumberToSmi, 1); } // Save the conversion result before the pop instructions below // have a chance to overwrite it. diff --git a/src/arm64/full-codegen-arm64.cc b/src/arm64/full-codegen-arm64.cc index 768a8ae..d40e74a 100644 --- a/src/arm64/full-codegen-arm64.cc +++ b/src/arm64/full-codegen-arm64.cc @@ -235,13 +235,13 @@ void FullCodeGenerator::Generate() { if (FLAG_harmony_scoping && info->scope()->is_global_scope()) { __ Mov(x10, Operand(info->scope()->GetScopeInfo())); __ Push(x1, x10); - __ CallRuntime(Runtime::kNewGlobalContext, 2); + __ CallRuntime(Runtime::kHiddenNewGlobalContext, 2); } else if (heap_slots <= FastNewContextStub::kMaximumSlots) { FastNewContextStub stub(heap_slots); __ CallStub(&stub); } else { __ Push(x1); - __ CallRuntime(Runtime::kNewFunctionContext, 1); + __ CallRuntime(Runtime::kHiddenNewFunctionContext, 1); } function_in_register_x1 = false; // Context is returned in x0. It replaces the context passed to us. @@ -875,7 +875,7 @@ void FullCodeGenerator::VisitVariableDeclaration( // Pushing 0 (xzr) indicates no initial value. __ Push(cp, x2, x1, xzr); } - __ CallRuntime(Runtime::kDeclareContextSlot, 4); + __ CallRuntime(Runtime::kHiddenDeclareContextSlot, 4); break; } } @@ -931,7 +931,7 @@ void FullCodeGenerator::VisitFunctionDeclaration( __ Push(cp, x2, x1); // Push initial value for function declaration. VisitForStackValue(declaration->fun()); - __ CallRuntime(Runtime::kDeclareContextSlot, 4); + __ CallRuntime(Runtime::kHiddenDeclareContextSlot, 4); break; } } @@ -1006,7 +1006,7 @@ void FullCodeGenerator::DeclareGlobals(Handle pairs) { __ Mov(flags, Smi::FromInt(DeclareGlobalsFlags())); } __ Push(cp, x11, flags); - __ CallRuntime(Runtime::kDeclareGlobals, 3); + __ CallRuntime(Runtime::kHiddenDeclareGlobals, 3); // Return value is ignored. } @@ -1014,7 +1014,7 @@ void FullCodeGenerator::DeclareGlobals(Handle pairs) { void FullCodeGenerator::DeclareModules(Handle descriptions) { // Call the runtime to declare the modules. __ Push(descriptions); - __ CallRuntime(Runtime::kDeclareModules, 1); + __ CallRuntime(Runtime::kHiddenDeclareModules, 1); // Return value is ignored. } @@ -1367,7 +1367,7 @@ void FullCodeGenerator::EmitNewClosure(Handle info, __ LoadRoot(x10, pretenure ? Heap::kTrueValueRootIndex : Heap::kFalseValueRootIndex); __ Push(cp, x11, x10); - __ CallRuntime(Runtime::kNewClosure, 3); + __ CallRuntime(Runtime::kHiddenNewClosure, 3); } context()->Plug(x0); } @@ -1483,7 +1483,7 @@ void FullCodeGenerator::EmitDynamicLookupFastCase(Variable* var, } else { // LET || CONST __ Mov(x0, Operand(var->name())); __ Push(x0); - __ CallRuntime(Runtime::kThrowReferenceError, 1); + __ CallRuntime(Runtime::kHiddenThrowReferenceError, 1); } } __ B(done); @@ -1561,7 +1561,7 @@ void FullCodeGenerator::EmitVariableLoad(VariableProxy* proxy) { // binding in harmony mode. __ Mov(x0, Operand(var->name())); __ Push(x0); - __ CallRuntime(Runtime::kThrowReferenceError, 1); + __ CallRuntime(Runtime::kHiddenThrowReferenceError, 1); __ Bind(&done); } else { // Uninitalized const bindings outside of harmony mode are unholed. @@ -1586,7 +1586,7 @@ void FullCodeGenerator::EmitVariableLoad(VariableProxy* proxy) { Comment cmnt(masm_, "Lookup variable"); __ Mov(x1, Operand(var->name())); __ Push(cp, x1); // Context and name. - __ CallRuntime(Runtime::kLoadContextSlot, 2); + __ CallRuntime(Runtime::kHiddenLoadContextSlot, 2); __ Bind(&done); context()->Plug(x0); break; @@ -1618,7 +1618,7 @@ void FullCodeGenerator::VisitRegExpLiteral(RegExpLiteral* expr) { __ Mov(x2, Operand(expr->pattern())); __ Mov(x1, Operand(expr->flags())); __ Push(x4, x3, x2, x1); - __ CallRuntime(Runtime::kMaterializeRegExpLiteral, 4); + __ CallRuntime(Runtime::kHiddenMaterializeRegExpLiteral, 4); __ Mov(x5, x0); __ Bind(&materialized); @@ -1630,7 +1630,7 @@ void FullCodeGenerator::VisitRegExpLiteral(RegExpLiteral* expr) { __ Bind(&runtime_allocate); __ Mov(x10, Smi::FromInt(size)); __ Push(x5, x10); - __ CallRuntime(Runtime::kAllocateInNewSpace, 1); + __ CallRuntime(Runtime::kHiddenAllocateInNewSpace, 1); __ Pop(x5); __ Bind(&allocated); @@ -1676,7 +1676,7 @@ void FullCodeGenerator::VisitObjectLiteral(ObjectLiteral* expr) { flags != ObjectLiteral::kFastElements || properties_count > max_cloned_properties) { __ Push(x3, x2, x1, x0); - __ CallRuntime(Runtime::kCreateObjectLiteral, 4); + __ CallRuntime(Runtime::kHiddenCreateObjectLiteral, 4); } else { FastCloneShallowObjectStub stub(properties_count); __ CallStub(&stub); @@ -1826,7 +1826,7 @@ void FullCodeGenerator::VisitArrayLiteral(ArrayLiteral* expr) { length > FastCloneShallowArrayStub::kMaximumClonedLength) { __ Mov(x0, Smi::FromInt(flags)); __ Push(x3, x2, x1, x0); - __ CallRuntime(Runtime::kCreateArrayLiteral, 4); + __ CallRuntime(Runtime::kHiddenCreateArrayLiteral, 4); } else { ASSERT(IsFastSmiOrObjectElementsKind(constant_elements_kind) || FLAG_smi_only_arrays); @@ -2197,7 +2197,7 @@ void FullCodeGenerator::EmitCallStoreContextSlot( // jssp[16] : context. // jssp[24] : value. __ Push(x0, cp, x11, x10); - __ CallRuntime(Runtime::kStoreContextSlot, 4); + __ CallRuntime(Runtime::kHiddenStoreContextSlot, 4); } @@ -2217,7 +2217,7 @@ void FullCodeGenerator::EmitVariableAssignment(Variable* var, __ Push(x0); __ Mov(x0, Operand(var->name())); __ Push(cp, x0); // Context and name. - __ CallRuntime(Runtime::kInitializeConstContextSlot, 3); + __ CallRuntime(Runtime::kHiddenInitializeConstContextSlot, 3); } else { ASSERT(var->IsStackLocal() || var->IsContextSlot()); Label skip; @@ -2240,7 +2240,7 @@ void FullCodeGenerator::EmitVariableAssignment(Variable* var, __ JumpIfNotRoot(x10, Heap::kTheHoleValueRootIndex, &assign); __ Mov(x10, Operand(var->name())); __ Push(x10); - __ CallRuntime(Runtime::kThrowReferenceError, 1); + __ CallRuntime(Runtime::kHiddenThrowReferenceError, 1); // Perform the assignment. __ Bind(&assign); EmitStoreToStackLocalOrContextSlot(var, location); @@ -2480,7 +2480,7 @@ void FullCodeGenerator::EmitResolvePossiblyDirectEval(int arg_count) { __ Push(x10, x11); // Do the runtime call. - __ CallRuntime(Runtime::kResolvePossiblyDirectEval, 5); + __ CallRuntime(Runtime::kHiddenResolvePossiblyDirectEval, 5); } @@ -2496,8 +2496,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* args = expr->arguments(); @@ -2557,7 +2557,7 @@ void FullCodeGenerator::VisitCall(Call* expr) { __ Push(context_register()); __ Mov(x10, Operand(proxy->name())); __ Push(x10); - __ CallRuntime(Runtime::kLoadContextSlot, 2); + __ CallRuntime(Runtime::kHiddenLoadContextSlot, 2); __ Push(x0, x1); // Receiver, function. // If fast case code has been generated, emit code to push the @@ -3231,7 +3231,7 @@ void FullCodeGenerator::EmitDateField(CallRuntime* expr) { } __ Bind(¬_date_object); - __ CallRuntime(Runtime::kThrowNotDateError, 0); + __ CallRuntime(Runtime::kHiddenThrowNotDateError, 0); __ Bind(&done); context()->Plug(x0); } @@ -3945,7 +3945,7 @@ void FullCodeGenerator::VisitUnaryOperation(UnaryOperation* expr) { // context where the variable was introduced. __ Mov(x2, Operand(var->name())); __ Push(context_register(), x2); - __ CallRuntime(Runtime::kDeleteContextSlot, 2); + __ CallRuntime(Runtime::kHiddenDeleteContextSlot, 2); context()->Plug(x0); } } else { @@ -4225,7 +4225,7 @@ void FullCodeGenerator::VisitForTypeofValue(Expression* expr) { __ Bind(&slow); __ Mov(x0, Operand(proxy->name())); __ Push(cp, x0); - __ CallRuntime(Runtime::kLoadContextSlotNoReferenceError, 2); + __ CallRuntime(Runtime::kHiddenLoadContextSlotNoReferenceError, 2); PrepareForBailout(expr, TOS_REG); __ Bind(&done); @@ -4476,7 +4476,7 @@ void FullCodeGenerator::VisitYield(Yield* expr) { __ Cmp(__ StackPointer(), x1); __ B(eq, &post_runtime); __ Push(x0); // generator object - __ CallRuntime(Runtime::kSuspendJSGeneratorObject, 1); + __ CallRuntime(Runtime::kHiddenSuspendJSGeneratorObject, 1); __ Ldr(cp, MemOperand(fp, StandardFrameConstants::kContextOffset)); __ Bind(&post_runtime); __ Pop(result_register()); @@ -4547,7 +4547,7 @@ void FullCodeGenerator::VisitYield(Yield* expr) { __ Mov(x1, cp); __ RecordWriteField(x0, JSGeneratorObject::kContextOffset, x1, x2, kLRHasBeenSaved, kDontSaveFPRegs); - __ CallRuntime(Runtime::kSuspendJSGeneratorObject, 1); + __ CallRuntime(Runtime::kHiddenSuspendJSGeneratorObject, 1); __ Ldr(cp, MemOperand(fp, StandardFrameConstants::kContextOffset)); __ Pop(x0); // result EmitReturnSequence(); @@ -4606,7 +4606,7 @@ void FullCodeGenerator::EmitGeneratorResume(Expression *generator, Register function = x4; // The value stays in x0, 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. r1 // will hold the generator object until the activation has been resumed. VisitForStackValue(generator); @@ -4688,7 +4688,7 @@ void FullCodeGenerator::EmitGeneratorResume(Expression *generator, __ Mov(x10, Smi::FromInt(resume_mode)); __ Push(generator_object, result_register(), x10); - __ CallRuntime(Runtime::kResumeJSGeneratorObject, 3); + __ CallRuntime(Runtime::kHiddenResumeJSGeneratorObject, 3); // Not reached: the runtime call returns elsewhere. __ Unreachable(); @@ -4703,14 +4703,14 @@ void FullCodeGenerator::EmitGeneratorResume(Expression *generator, } else { // Throw the provided value. __ Push(value_reg); - __ CallRuntime(Runtime::kThrow, 1); + __ CallRuntime(Runtime::kHiddenThrow, 1); } __ B(&done); // Throw error if we attempt to operate on a running generator. __ Bind(&wrong_state); __ Push(generator_object); - __ CallRuntime(Runtime::kThrowGeneratorStateError, 1); + __ CallRuntime(Runtime::kHiddenThrowGeneratorStateError, 1); __ Bind(&done); context()->Plug(result_register()); @@ -4731,7 +4731,7 @@ void FullCodeGenerator::EmitCreateIteratorResult(bool done) { __ Bind(&gc_required); __ Push(Smi::FromInt(map->instance_size())); - __ CallRuntime(Runtime::kAllocateInNewSpace, 1); + __ CallRuntime(Runtime::kHiddenAllocateInNewSpace, 1); __ Ldr(context_register(), MemOperand(fp, StandardFrameConstants::kContextOffset)); diff --git a/src/arm64/lithium-codegen-arm64.cc b/src/arm64/lithium-codegen-arm64.cc index 5383896..cd931e9 100644 --- a/src/arm64/lithium-codegen-arm64.cc +++ b/src/arm64/lithium-codegen-arm64.cc @@ -713,7 +713,7 @@ bool LCodeGen::GeneratePrologue() { __ CallStub(&stub); } else { __ Push(x1); - __ CallRuntime(Runtime::kNewFunctionContext, 1); + __ CallRuntime(Runtime::kHiddenNewFunctionContext, 1); } RecordSafepoint(Safepoint::kNoLazyDeopt); // Context is returned in x0. It replaces the context passed to us. It's @@ -1593,7 +1593,7 @@ void LCodeGen::DoDeferredAllocate(LAllocate* instr) { __ Push(size, x10); CallRuntimeFromDeferred( - Runtime::kAllocateInTargetSpace, 2, instr, instr->context()); + Runtime::kHiddenAllocateInTargetSpace, 2, instr, instr->context()); __ StoreToSafepointRegisterSlot(x0, ToRegister(instr->result())); } @@ -2815,7 +2815,7 @@ void LCodeGen::DoFunctionLiteral(LFunctionLiteral* instr) { __ Mov(x1, Operand(pretenure ? factory()->true_value() : factory()->false_value())); __ Push(cp, x2, x1); - CallRuntime(Runtime::kNewClosure, 3, instr); + CallRuntime(Runtime::kHiddenNewClosure, 3, instr); } } @@ -3756,7 +3756,7 @@ void LCodeGen::DoDeferredMathAbsTagged(LMathAbsTagged* instr, } { PushSafepointRegistersScope scope(this, Safepoint::kWithRegisters); - CallRuntimeFromDeferred(Runtime::kAllocateHeapNumber, 0, instr, + CallRuntimeFromDeferred(Runtime::kHiddenAllocateHeapNumber, 0, instr, instr->context()); __ StoreToSafepointRegisterSlot(x0, result); } @@ -4451,11 +4451,11 @@ void LCodeGen::DoDeferredNumberTagD(LNumberTagD* instr) { PushSafepointRegistersScope scope(this, Safepoint::kWithRegisters); // NumberTagU and NumberTagD use the context from the frame, rather than // the environment's HContext or HInlinedContext value. - // They only call Runtime::kAllocateHeapNumber. + // They only call Runtime::kHiddenAllocateHeapNumber. // The corresponding HChange instructions are added in a phase that does // not have easy access to the local context. __ Ldr(cp, MemOperand(fp, StandardFrameConstants::kContextOffset)); - __ CallRuntimeSaveDoubles(Runtime::kAllocateHeapNumber); + __ CallRuntimeSaveDoubles(Runtime::kHiddenAllocateHeapNumber); RecordSafepointWithRegisters( instr->pointer_map(), 0, Safepoint::kNoLazyDeopt); __ StoreToSafepointRegisterSlot(x0, result); @@ -4517,11 +4517,11 @@ void LCodeGen::DoDeferredNumberTagU(LInstruction* instr, // NumberTagU and NumberTagD use the context from the frame, rather than // the environment's HContext or HInlinedContext value. - // They only call Runtime::kAllocateHeapNumber. + // They only call Runtime::kHiddenAllocateHeapNumber. // The corresponding HChange instructions are added in a phase that does // not have easy access to the local context. __ Ldr(cp, MemOperand(fp, StandardFrameConstants::kContextOffset)); - __ CallRuntimeSaveDoubles(Runtime::kAllocateHeapNumber); + __ CallRuntimeSaveDoubles(Runtime::kHiddenAllocateHeapNumber); RecordSafepointWithRegisters( instr->pointer_map(), 0, Safepoint::kNoLazyDeopt); __ StoreToSafepointRegisterSlot(x0, dst); @@ -4937,14 +4937,14 @@ void LCodeGen::DoDeclareGlobals(LDeclareGlobals* instr) { __ LoadHeapObject(scratch1, instr->hydrogen()->pairs()); __ Mov(scratch2, Smi::FromInt(instr->hydrogen()->flags())); __ Push(cp, scratch1, scratch2); // The context is the first argument. - CallRuntime(Runtime::kDeclareGlobals, 3, instr); + CallRuntime(Runtime::kHiddenDeclareGlobals, 3, instr); } void LCodeGen::DoDeferredStackCheck(LStackCheck* instr) { PushSafepointRegistersScope scope(this, Safepoint::kWithRegisters); LoadContextFromDeferred(instr->context()); - __ CallRuntimeSaveDoubles(Runtime::kStackGuard); + __ CallRuntimeSaveDoubles(Runtime::kHiddenStackGuard); RecordSafepointWithLazyDeopt( instr, RECORD_SAFEPOINT_WITH_REGISTERS_AND_NO_ARGUMENTS); ASSERT(instr->HasEnvironment()); @@ -5635,7 +5635,7 @@ void LCodeGen::DoRegExpLiteral(LRegExpLiteral* instr) { __ Mov(x11, Operand(instr->hydrogen()->pattern())); __ Mov(x10, Operand(instr->hydrogen()->flags())); __ Push(x7, x12, x11, x10); - CallRuntime(Runtime::kMaterializeRegExpLiteral, 4, instr); + CallRuntime(Runtime::kHiddenMaterializeRegExpLiteral, 4, instr); __ Mov(x1, x0); __ Bind(&materialized); @@ -5648,7 +5648,7 @@ void LCodeGen::DoRegExpLiteral(LRegExpLiteral* instr) { __ Bind(&runtime_allocate); __ Mov(x0, Smi::FromInt(size)); __ Push(x1, x0); - CallRuntime(Runtime::kAllocateInNewSpace, 1, instr); + CallRuntime(Runtime::kHiddenAllocateInNewSpace, 1, instr); __ Pop(x1); __ Bind(&allocated); diff --git a/src/arm64/macro-assembler-arm64.cc b/src/arm64/macro-assembler-arm64.cc index 1b85fbf..08ddb87 100644 --- a/src/arm64/macro-assembler-arm64.cc +++ b/src/arm64/macro-assembler-arm64.cc @@ -1479,9 +1479,9 @@ void MacroAssembler::Throw(BailoutReason reason) { // We don't actually want to generate a pile of code for this, so just // claim there is a stack frame, without generating one. FrameScope scope(this, StackFrame::NONE); - CallRuntime(Runtime::kThrowMessage, 1); + CallRuntime(Runtime::kHiddenThrowMessage, 1); } else { - CallRuntime(Runtime::kThrowMessage, 1); + CallRuntime(Runtime::kHiddenThrowMessage, 1); } // ThrowMessage should not return here. Unreachable(); @@ -1740,7 +1740,8 @@ void MacroAssembler::CallApiFunctionAndReturn( { FrameScope frame(this, StackFrame::INTERNAL); CallExternalReference( - ExternalReference(Runtime::kPromoteScheduledException, isolate()), 0); + ExternalReference( + Runtime::kHiddenPromoteScheduledException, isolate()), 0); } B(&exception_handled); diff --git a/src/builtins.cc b/src/builtins.cc index e460a8f..52cf5e4 100644 --- a/src/builtins.cc +++ b/src/builtins.cc @@ -1706,12 +1706,12 @@ const char* Builtins::Lookup(byte* pc) { void Builtins::Generate_InterruptCheck(MacroAssembler* masm) { - masm->TailCallRuntime(Runtime::kInterrupt, 0, 1); + masm->TailCallRuntime(Runtime::kHiddenInterrupt, 0, 1); } void Builtins::Generate_StackCheck(MacroAssembler* masm) { - masm->TailCallRuntime(Runtime::kStackGuard, 0, 1); + masm->TailCallRuntime(Runtime::kHiddenStackGuard, 0, 1); } diff --git a/src/full-codegen.cc b/src/full-codegen.cc index 1299023..fa9ecf4 100644 --- a/src/full-codegen.cc +++ b/src/full-codegen.cc @@ -624,7 +624,7 @@ void FullCodeGenerator::AllocateModules(ZoneList* declarations) { ASSERT(scope->interface()->Index() >= 0); __ Push(Smi::FromInt(scope->interface()->Index())); __ Push(scope->GetScopeInfo()); - __ CallRuntime(Runtime::kPushModuleContext, 2); + __ CallRuntime(Runtime::kHiddenPushModuleContext, 2); StoreToFrameField(StandardFrameConstants::kContextOffset, context_register()); @@ -764,7 +764,7 @@ void FullCodeGenerator::VisitModuleLiteral(ModuleLiteral* module) { ASSERT(interface->Index() >= 0); __ Push(Smi::FromInt(interface->Index())); __ Push(Smi::FromInt(0)); - __ CallRuntime(Runtime::kPushModuleContext, 2); + __ CallRuntime(Runtime::kHiddenPushModuleContext, 2); StoreToFrameField(StandardFrameConstants::kContextOffset, context_register()); { @@ -1091,7 +1091,7 @@ void FullCodeGenerator::VisitBlock(Block* stmt) { { Comment cmnt(masm_, "[ Extend block context"); __ Push(scope_->GetScopeInfo()); PushFunctionArgumentForContextAllocation(); - __ CallRuntime(Runtime::kPushBlockContext, 2); + __ CallRuntime(Runtime::kHiddenPushBlockContext, 2); // Replace the context stored in the frame. StoreToFrameField(StandardFrameConstants::kContextOffset, @@ -1123,7 +1123,7 @@ void FullCodeGenerator::VisitModuleStatement(ModuleStatement* stmt) { __ Push(Smi::FromInt(stmt->proxy()->interface()->Index())); __ Push(Smi::FromInt(0)); - __ CallRuntime(Runtime::kPushModuleContext, 2); + __ CallRuntime(Runtime::kHiddenPushModuleContext, 2); StoreToFrameField( StandardFrameConstants::kContextOffset, context_register()); @@ -1262,7 +1262,7 @@ void FullCodeGenerator::VisitWithStatement(WithStatement* stmt) { VisitForStackValue(stmt->expression()); PushFunctionArgumentForContextAllocation(); - __ CallRuntime(Runtime::kPushWithContext, 2); + __ CallRuntime(Runtime::kHiddenPushWithContext, 2); StoreToFrameField(StandardFrameConstants::kContextOffset, context_register()); Scope* saved_scope = scope(); @@ -1415,7 +1415,7 @@ void FullCodeGenerator::VisitTryCatchStatement(TryCatchStatement* stmt) { __ Push(stmt->variable()->name()); __ Push(result_register()); PushFunctionArgumentForContextAllocation(); - __ CallRuntime(Runtime::kPushCatchContext, 3); + __ CallRuntime(Runtime::kHiddenPushCatchContext, 3); StoreToFrameField(StandardFrameConstants::kContextOffset, context_register()); } @@ -1479,7 +1479,7 @@ void FullCodeGenerator::VisitTryFinallyStatement(TryFinallyStatement* stmt) { // rethrow the exception if it returns. __ Call(&finally_entry); __ Push(result_register()); - __ CallRuntime(Runtime::kReThrow, 1); + __ CallRuntime(Runtime::kHiddenReThrow, 1); // Finally block implementation. __ bind(&finally_entry); @@ -1605,7 +1605,7 @@ void FullCodeGenerator::VisitNativeFunctionLiteral( void FullCodeGenerator::VisitThrow(Throw* expr) { Comment cmnt(masm_, "[ Throw"); VisitForStackValue(expr->exception()); - __ CallRuntime(Runtime::kThrow, 1); + __ CallRuntime(Runtime::kHiddenThrow, 1); // Never returns here. } diff --git a/src/hydrogen-instructions.h b/src/hydrogen-instructions.h index 09050a5..1e6ac19 100644 --- a/src/hydrogen-instructions.h +++ b/src/hydrogen-instructions.h @@ -7265,7 +7265,7 @@ class HToFastProperties V8_FINAL : public HUnaryOperation { ASSERT(value->IsCallRuntime()); #ifdef DEBUG const Runtime::Function* function = HCallRuntime::cast(value)->function(); - ASSERT(function->function_id == Runtime::kCreateObjectLiteral); + ASSERT(function->function_id == Runtime::kHiddenCreateObjectLiteral); #endif } diff --git a/src/hydrogen.cc b/src/hydrogen.cc index 3472874..a7ef0cb 100644 --- a/src/hydrogen.cc +++ b/src/hydrogen.cc @@ -1754,7 +1754,7 @@ HValue* HGraphBuilder::BuildNumberToString(HValue* object, Type* type) { Add(object); Push(Add( isolate()->factory()->empty_string(), - Runtime::FunctionForId(Runtime::kNumberToStringSkipCache), + Runtime::FunctionForId(Runtime::kHiddenNumberToStringSkipCache), 1)); } if_found.End(); @@ -5115,7 +5115,7 @@ void HOptimizedGraphBuilder::VisitObjectLiteral(ObjectLiteral* expr) { // TODO(mvstanton): Add a flag to turn off creation of any // AllocationMementos for this call: we are in crankshaft and should have // learned enough about transition behavior to stop emitting mementos. - Runtime::FunctionId function_id = Runtime::kCreateObjectLiteral; + Runtime::FunctionId function_id = Runtime::kHiddenCreateObjectLiteral; literal = Add(isolate()->factory()->empty_string(), Runtime::FunctionForId(function_id), 4); @@ -5272,7 +5272,7 @@ void HOptimizedGraphBuilder::VisitArrayLiteral(ArrayLiteral* expr) { // TODO(mvstanton): Consider a flag to turn off creation of any // AllocationMementos for this call: we are in crankshaft and should have // learned enough about transition behavior to stop emitting mementos. - Runtime::FunctionId function_id = Runtime::kCreateArrayLiteral; + Runtime::FunctionId function_id = Runtime::kHiddenCreateArrayLiteral; literal = Add(isolate()->factory()->empty_string(), Runtime::FunctionForId(function_id), 4); @@ -6190,7 +6190,7 @@ void HOptimizedGraphBuilder::VisitThrow(Throw* expr) { if (!FLAG_hydrogen_track_positions) SetSourcePosition(expr->position()); Add(value); Add(isolate()->factory()->empty_string(), - Runtime::FunctionForId(Runtime::kThrow), 1); + Runtime::FunctionForId(Runtime::kHiddenThrow), 1); Add(expr->id()); // If the throw definitely exits the function, we can finish with a dummy diff --git a/src/ia32/builtins-ia32.cc b/src/ia32/builtins-ia32.cc index fda4e63..785c5fd 100644 --- a/src/ia32/builtins-ia32.cc +++ b/src/ia32/builtins-ia32.cc @@ -115,7 +115,7 @@ void Builtins::Generate_InOptimizationQueue(MacroAssembler* masm) { __ cmp(esp, Operand::StaticVariable(stack_limit)); __ j(above_equal, &ok, Label::kNear); - CallRuntimePassFunction(masm, Runtime::kTryInstallOptimizedCode); + CallRuntimePassFunction(masm, Runtime::kHiddenTryInstallOptimizedCode); GenerateTailCallToReturnedCode(masm); __ bind(&ok); @@ -202,7 +202,7 @@ static void Generate_JSConstructStubHelper(MacroAssembler* masm, __ push(edi); // constructor // The call will replace the stub, so the countdown is only done once. - __ CallRuntime(Runtime::kFinalizeInstanceSize, 1); + __ CallRuntime(Runtime::kHiddenFinalizeInstanceSize, 1); __ pop(edi); __ pop(eax); @@ -370,9 +370,9 @@ static void Generate_JSConstructStubHelper(MacroAssembler* masm, // edi: function (constructor) __ push(edi); if (create_memento) { - __ CallRuntime(Runtime::kNewObjectWithAllocationSite, 2); + __ CallRuntime(Runtime::kHiddenNewObjectWithAllocationSite, 2); } else { - __ CallRuntime(Runtime::kNewObject, 1); + __ CallRuntime(Runtime::kHiddenNewObject, 1); } __ mov(ebx, eax); // store result in ebx @@ -567,7 +567,7 @@ void Builtins::Generate_JSConstructEntryTrampoline(MacroAssembler* masm) { void Builtins::Generate_CompileUnoptimized(MacroAssembler* masm) { - CallRuntimePassFunction(masm, Runtime::kCompileUnoptimized); + CallRuntimePassFunction(masm, Runtime::kHiddenCompileUnoptimized); GenerateTailCallToReturnedCode(masm); } @@ -582,7 +582,7 @@ static void CallCompileOptimized(MacroAssembler* masm, bool concurrent) { // Whether to compile in a background thread. __ Push(masm->isolate()->factory()->ToBoolean(concurrent)); - __ CallRuntime(Runtime::kCompileOptimized, 2); + __ CallRuntime(Runtime::kHiddenCompileOptimized, 2); // Restore receiver. __ pop(edi); } @@ -686,7 +686,7 @@ static void Generate_NotifyStubFailureHelper(MacroAssembler* masm, // stubs that tail call the runtime on deopts passing their parameters in // registers. __ pushad(); - __ CallRuntime(Runtime::kNotifyStubFailure, 0, save_doubles); + __ CallRuntime(Runtime::kHiddenNotifyStubFailure, 0, save_doubles); __ popad(); // Tear down internal frame. } @@ -718,7 +718,7 @@ static void Generate_NotifyDeoptimizedHelper(MacroAssembler* masm, // Pass deoptimization type to the runtime system. __ push(Immediate(Smi::FromInt(static_cast(type)))); - __ CallRuntime(Runtime::kNotifyDeoptimized, 1); + __ CallRuntime(Runtime::kHiddenNotifyDeoptimized, 1); // Tear down internal frame. } @@ -1419,7 +1419,7 @@ void Builtins::Generate_OsrAfterStackCheck(MacroAssembler* masm) { __ j(above_equal, &ok, Label::kNear); { FrameScope scope(masm, StackFrame::INTERNAL); - __ CallRuntime(Runtime::kStackGuard, 0); + __ CallRuntime(Runtime::kHiddenStackGuard, 0); } __ jmp(masm->isolate()->builtins()->OnStackReplacement(), RelocInfo::CODE_TARGET); diff --git a/src/ia32/code-stubs-ia32.cc b/src/ia32/code-stubs-ia32.cc index 7d72279..44f2472 100644 --- a/src/ia32/code-stubs-ia32.cc +++ b/src/ia32/code-stubs-ia32.cc @@ -50,7 +50,7 @@ void FastNewClosureStub::InitializeInterfaceDescriptor( descriptor->register_param_count_ = 1; descriptor->register_params_ = registers; descriptor->deoptimization_handler_ = - Runtime::FunctionForId(Runtime::kNewClosureFromStubFailure)->entry; + Runtime::FunctionForId(Runtime::kHiddenNewClosureFromStubFailure)->entry; } @@ -92,7 +92,8 @@ void FastCloneShallowArrayStub::InitializeInterfaceDescriptor( descriptor->register_param_count_ = 3; descriptor->register_params_ = registers; descriptor->deoptimization_handler_ = - Runtime::FunctionForId(Runtime::kCreateArrayLiteralStubBailout)->entry; + Runtime::FunctionForId( + Runtime::kHiddenCreateArrayLiteralStubBailout)->entry; } @@ -103,7 +104,7 @@ void FastCloneShallowObjectStub::InitializeInterfaceDescriptor( descriptor->register_param_count_ = 4; descriptor->register_params_ = registers; descriptor->deoptimization_handler_ = - Runtime::FunctionForId(Runtime::kCreateObjectLiteral)->entry; + Runtime::FunctionForId(Runtime::kHiddenCreateObjectLiteral)->entry; } @@ -237,7 +238,7 @@ static void InitializeArrayConstructorDescriptor( descriptor->hint_stack_parameter_count_ = constant_stack_parameter_count; descriptor->function_mode_ = JS_FUNCTION_STUB_MODE; descriptor->deoptimization_handler_ = - Runtime::FunctionForId(Runtime::kArrayConstructor)->entry; + Runtime::FunctionForId(Runtime::kHiddenArrayConstructor)->entry; } @@ -265,7 +266,7 @@ static void InitializeInternalArrayConstructorDescriptor( descriptor->hint_stack_parameter_count_ = constant_stack_parameter_count; descriptor->function_mode_ = JS_FUNCTION_STUB_MODE; descriptor->deoptimization_handler_ = - Runtime::FunctionForId(Runtime::kInternalArrayConstructor)->entry; + Runtime::FunctionForId(Runtime::kHiddenInternalArrayConstructor)->entry; } @@ -1146,7 +1147,7 @@ void ArgumentsAccessStub::GenerateNewSloppySlow(MacroAssembler* masm) { __ mov(Operand(esp, 2 * kPointerSize), edx); __ bind(&runtime); - __ TailCallRuntime(Runtime::kNewArgumentsFast, 3, 1); + __ TailCallRuntime(Runtime::kHiddenNewArgumentsFast, 3, 1); } @@ -1371,7 +1372,7 @@ void ArgumentsAccessStub::GenerateNewSloppyFast(MacroAssembler* masm) { __ bind(&runtime); __ pop(eax); // Remove saved parameter count. __ mov(Operand(esp, 1 * kPointerSize), ecx); // Patch argument count. - __ TailCallRuntime(Runtime::kNewArgumentsFast, 3, 1); + __ TailCallRuntime(Runtime::kHiddenNewArgumentsFast, 3, 1); } @@ -1470,7 +1471,7 @@ void ArgumentsAccessStub::GenerateNewStrict(MacroAssembler* masm) { // Do the runtime call to allocate the arguments object. __ bind(&runtime); - __ TailCallRuntime(Runtime::kNewStrictArgumentsFast, 3, 1); + __ TailCallRuntime(Runtime::kHiddenNewStrictArgumentsFast, 3, 1); } @@ -3129,7 +3130,7 @@ void StringCharCodeAtGenerator::GenerateSlow( } else { ASSERT(index_flags_ == STRING_INDEX_IS_ARRAY_INDEX); // NumberToSmi discards numbers that are not exact integers. - __ CallRuntime(Runtime::kNumberToSmi, 1); + __ CallRuntime(Runtime::kHiddenNumberToSmi, 1); } if (!index_.is(eax)) { // Save the conversion result before the pop instructions below diff --git a/src/ia32/full-codegen-ia32.cc b/src/ia32/full-codegen-ia32.cc index d51de08..70a968e 100644 --- a/src/ia32/full-codegen-ia32.cc +++ b/src/ia32/full-codegen-ia32.cc @@ -225,13 +225,13 @@ void FullCodeGenerator::Generate() { if (FLAG_harmony_scoping && info->scope()->is_global_scope()) { __ push(edi); __ 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(edi); - __ CallRuntime(Runtime::kNewFunctionContext, 1); + __ CallRuntime(Runtime::kHiddenNewFunctionContext, 1); } function_in_register = false; // Context is returned in eax. It replaces the context passed to us. @@ -824,7 +824,7 @@ void FullCodeGenerator::VisitVariableDeclaration( } else { __ push(Immediate(Smi::FromInt(0))); // Indicates no initial value. } - __ CallRuntime(Runtime::kDeclareContextSlot, 4); + __ CallRuntime(Runtime::kHiddenDeclareContextSlot, 4); break; } } @@ -877,7 +877,7 @@ void FullCodeGenerator::VisitFunctionDeclaration( __ push(Immediate(variable->name())); __ push(Immediate(Smi::FromInt(NONE))); VisitForStackValue(declaration->fun()); - __ CallRuntime(Runtime::kDeclareContextSlot, 4); + __ CallRuntime(Runtime::kHiddenDeclareContextSlot, 4); break; } } @@ -947,7 +947,7 @@ void FullCodeGenerator::DeclareGlobals(Handle pairs) { __ push(esi); // The context is the first argument. __ Push(pairs); __ Push(Smi::FromInt(DeclareGlobalsFlags())); - __ CallRuntime(Runtime::kDeclareGlobals, 3); + __ CallRuntime(Runtime::kHiddenDeclareGlobals, 3); // Return value is ignored. } @@ -955,7 +955,7 @@ void FullCodeGenerator::DeclareGlobals(Handle pairs) { void FullCodeGenerator::DeclareModules(Handle descriptions) { // Call the runtime to declare the modules. __ Push(descriptions); - __ CallRuntime(Runtime::kDeclareModules, 1); + __ CallRuntime(Runtime::kHiddenDeclareModules, 1); // Return value is ignored. } @@ -1307,7 +1307,7 @@ void FullCodeGenerator::EmitNewClosure(Handle info, __ push(Immediate(pretenure ? isolate()->factory()->true_value() : isolate()->factory()->false_value())); - __ CallRuntime(Runtime::kNewClosure, 3); + __ CallRuntime(Runtime::kHiddenNewClosure, 3); } context()->Plug(eax); } @@ -1432,7 +1432,7 @@ void FullCodeGenerator::EmitDynamicLookupFastCase(Variable* var, __ mov(eax, isolate()->factory()->undefined_value()); } else { // LET || CONST __ push(Immediate(var->name())); - __ CallRuntime(Runtime::kThrowReferenceError, 1); + __ CallRuntime(Runtime::kHiddenThrowReferenceError, 1); } } __ jmp(done); @@ -1509,7 +1509,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::kHiddenThrowReferenceError, 1); } else { // Uninitalized const bindings outside of harmony mode are unholed. ASSERT(var->mode() == CONST_LEGACY); @@ -1533,7 +1533,7 @@ void FullCodeGenerator::EmitVariableLoad(VariableProxy* proxy) { __ bind(&slow); __ push(esi); // Context. __ push(Immediate(var->name())); - __ CallRuntime(Runtime::kLoadContextSlot, 2); + __ CallRuntime(Runtime::kHiddenLoadContextSlot, 2); __ bind(&done); context()->Plug(eax); break; @@ -1564,7 +1564,7 @@ void FullCodeGenerator::VisitRegExpLiteral(RegExpLiteral* expr) { __ push(Immediate(Smi::FromInt(expr->literal_index()))); __ push(Immediate(expr->pattern())); __ push(Immediate(expr->flags())); - __ CallRuntime(Runtime::kMaterializeRegExpLiteral, 4); + __ CallRuntime(Runtime::kHiddenMaterializeRegExpLiteral, 4); __ mov(ebx, eax); __ bind(&materialized); @@ -1576,7 +1576,7 @@ void FullCodeGenerator::VisitRegExpLiteral(RegExpLiteral* expr) { __ bind(&runtime_allocate); __ push(ebx); __ push(Immediate(Smi::FromInt(size))); - __ CallRuntime(Runtime::kAllocateInNewSpace, 1); + __ CallRuntime(Runtime::kHiddenAllocateInNewSpace, 1); __ pop(ebx); __ bind(&allocated); @@ -1625,7 +1625,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::kHiddenCreateObjectLiteral, 4); } else { __ mov(edi, Operand(ebp, JavaScriptFrameConstants::kFunctionOffset)); __ mov(eax, FieldOperand(edi, JSFunction::kLiteralsOffset)); @@ -1778,7 +1778,7 @@ void FullCodeGenerator::VisitArrayLiteral(ArrayLiteral* expr) { __ push(Immediate(Smi::FromInt(expr->literal_index()))); __ push(Immediate(constant_elements)); __ push(Immediate(Smi::FromInt(flags))); - __ CallRuntime(Runtime::kCreateArrayLiteral, 4); + __ CallRuntime(Runtime::kHiddenCreateArrayLiteral, 4); } else { ASSERT(IsFastSmiOrObjectElementsKind(constant_elements_kind) || FLAG_smi_only_arrays); @@ -1991,7 +1991,7 @@ void FullCodeGenerator::VisitYield(Yield* expr) { __ cmp(esp, ebx); __ j(equal, &post_runtime); __ push(eax); // generator object - __ CallRuntime(Runtime::kSuspendJSGeneratorObject, 1); + __ CallRuntime(Runtime::kHiddenSuspendJSGeneratorObject, 1); __ mov(context_register(), Operand(ebp, StandardFrameConstants::kContextOffset)); __ bind(&post_runtime); @@ -2059,7 +2059,7 @@ void FullCodeGenerator::VisitYield(Yield* expr) { __ mov(ecx, esi); __ RecordWriteField(eax, JSGeneratorObject::kContextOffset, ecx, edx, kDontSaveFPRegs); - __ CallRuntime(Runtime::kSuspendJSGeneratorObject, 1); + __ CallRuntime(Runtime::kHiddenSuspendJSGeneratorObject, 1); __ mov(context_register(), Operand(ebp, StandardFrameConstants::kContextOffset)); __ pop(eax); // result @@ -2113,7 +2113,7 @@ void FullCodeGenerator::EmitGeneratorResume(Expression *generator, Expression *value, JSGeneratorObject::ResumeMode resume_mode) { // The value stays in eax, 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. // ebx will hold the generator object until the activation has been resumed. VisitForStackValue(generator); @@ -2193,7 +2193,7 @@ void FullCodeGenerator::EmitGeneratorResume(Expression *generator, __ push(ebx); __ push(result_register()); __ Push(Smi::FromInt(resume_mode)); - __ CallRuntime(Runtime::kResumeJSGeneratorObject, 3); + __ CallRuntime(Runtime::kHiddenResumeJSGeneratorObject, 3); // Not reached: the runtime call returns elsewhere. __ Abort(kGeneratorFailedToResume); @@ -2207,14 +2207,14 @@ void FullCodeGenerator::EmitGeneratorResume(Expression *generator, } else { // Throw the provided value. __ push(eax); - __ 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(ebx); - __ CallRuntime(Runtime::kThrowGeneratorStateError, 1); + __ CallRuntime(Runtime::kHiddenThrowGeneratorStateError, 1); __ bind(&done); context()->Plug(result_register()); @@ -2232,7 +2232,7 @@ void FullCodeGenerator::EmitCreateIteratorResult(bool done) { __ bind(&gc_required); __ Push(Smi::FromInt(map->instance_size())); - __ CallRuntime(Runtime::kAllocateInNewSpace, 1); + __ CallRuntime(Runtime::kHiddenAllocateInNewSpace, 1); __ mov(context_register(), Operand(ebp, StandardFrameConstants::kContextOffset)); @@ -2444,7 +2444,7 @@ void FullCodeGenerator::EmitCallStoreContextSlot( __ push(esi); // Context. __ push(Immediate(name)); __ push(Immediate(Smi::FromInt(strict_mode))); - __ CallRuntime(Runtime::kStoreContextSlot, 4); + __ CallRuntime(Runtime::kHiddenStoreContextSlot, 4); } @@ -2463,7 +2463,7 @@ void FullCodeGenerator::EmitVariableAssignment(Variable* var, __ push(eax); __ push(esi); __ push(Immediate(var->name())); - __ CallRuntime(Runtime::kInitializeConstContextSlot, 3); + __ CallRuntime(Runtime::kHiddenInitializeConstContextSlot, 3); } else { ASSERT(var->IsStackLocal() || var->IsContextSlot()); Label skip; @@ -2487,7 +2487,7 @@ void FullCodeGenerator::EmitVariableAssignment(Variable* var, __ cmp(edx, isolate()->factory()->the_hole_value()); __ j(not_equal, &assign, Label::kNear); __ push(Immediate(var->name())); - __ CallRuntime(Runtime::kThrowReferenceError, 1); + __ CallRuntime(Runtime::kHiddenThrowReferenceError, 1); __ bind(&assign); EmitStoreToStackLocalOrContextSlot(var, location); } @@ -2722,7 +2722,7 @@ void FullCodeGenerator::EmitResolvePossiblyDirectEval(int arg_count) { __ push(Immediate(Smi::FromInt(scope()->start_position()))); // Do the runtime call. - __ CallRuntime(Runtime::kResolvePossiblyDirectEval, 5); + __ CallRuntime(Runtime::kHiddenResolvePossiblyDirectEval, 5); } @@ -2738,8 +2738,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 call. + // 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* args = expr->arguments(); int arg_count = args->length(); @@ -2789,7 +2789,7 @@ void FullCodeGenerator::VisitCall(Call* expr) { // the object holding it (returned in edx). __ push(context_register()); __ push(Immediate(proxy->name())); - __ CallRuntime(Runtime::kLoadContextSlot, 2); + __ CallRuntime(Runtime::kHiddenLoadContextSlot, 2); __ push(eax); // Function. __ push(edx); // Receiver. @@ -3453,7 +3453,7 @@ void FullCodeGenerator::EmitDateField(CallRuntime* expr) { } __ bind(¬_date_object); - __ CallRuntime(Runtime::kThrowNotDateError, 0); + __ CallRuntime(Runtime::kHiddenThrowNotDateError, 0); __ bind(&done); context()->Plug(result); } @@ -4234,7 +4234,7 @@ void FullCodeGenerator::VisitUnaryOperation(UnaryOperation* expr) { // context where the variable was introduced. __ push(context_register()); __ push(Immediate(var->name())); - __ CallRuntime(Runtime::kDeleteContextSlot, 2); + __ CallRuntime(Runtime::kHiddenDeleteContextSlot, 2); context()->Plug(eax); } } else { @@ -4527,7 +4527,7 @@ void FullCodeGenerator::VisitForTypeofValue(Expression* expr) { __ bind(&slow); __ push(esi); __ push(Immediate(proxy->name())); - __ CallRuntime(Runtime::kLoadContextSlotNoReferenceError, 2); + __ CallRuntime(Runtime::kHiddenLoadContextSlotNoReferenceError, 2); PrepareForBailout(expr, TOS_REG); __ bind(&done); diff --git a/src/ia32/lithium-codegen-ia32.cc b/src/ia32/lithium-codegen-ia32.cc index aab2c96..0dbe3da 100644 --- a/src/ia32/lithium-codegen-ia32.cc +++ b/src/ia32/lithium-codegen-ia32.cc @@ -297,7 +297,7 @@ bool LCodeGen::GeneratePrologue() { __ CallStub(&stub); } else { __ push(edi); - __ CallRuntime(Runtime::kNewFunctionContext, 1); + __ CallRuntime(Runtime::kHiddenNewFunctionContext, 1); } RecordSafepoint(Safepoint::kNoLazyDeopt); // Context is returned in eax. It replaces the context passed to us. @@ -3739,7 +3739,7 @@ void LCodeGen::DoDeclareGlobals(LDeclareGlobals* instr) { __ push(esi); // The context is the first argument. __ push(Immediate(instr->hydrogen()->pairs())); __ push(Immediate(Smi::FromInt(instr->hydrogen()->flags()))); - CallRuntime(Runtime::kDeclareGlobals, 3, instr); + CallRuntime(Runtime::kHiddenDeclareGlobals, 3, instr); } @@ -3863,7 +3863,7 @@ void LCodeGen::DoDeferredMathAbsTaggedHeapNumber(LMathAbs* instr) { // Slow case: Call the runtime system to do the number allocation. __ bind(&slow); - CallRuntimeFromDeferred(Runtime::kAllocateHeapNumber, 0, + CallRuntimeFromDeferred(Runtime::kHiddenAllocateHeapNumber, 0, instr, instr->context()); // Set the pointer to the new heap number in tmp. if (!tmp.is(eax)) __ mov(tmp, eax); @@ -5024,11 +5024,11 @@ void LCodeGen::DoDeferredNumberTagIU(LInstruction* instr, // NumberTagI and NumberTagD use the context from the frame, rather than // the environment's HContext or HInlinedContext value. - // They only call Runtime::kAllocateHeapNumber. + // They only call Runtime::kHiddenAllocateHeapNumber. // The corresponding HChange instructions are added in a phase that does // not have easy access to the local context. __ mov(esi, Operand(ebp, StandardFrameConstants::kContextOffset)); - __ CallRuntimeSaveDoubles(Runtime::kAllocateHeapNumber); + __ CallRuntimeSaveDoubles(Runtime::kHiddenAllocateHeapNumber); RecordSafepointWithRegisters( instr->pointer_map(), 0, Safepoint::kNoLazyDeopt); __ StoreToSafepointRegisterSlot(reg, eax); @@ -5099,11 +5099,11 @@ void LCodeGen::DoDeferredNumberTagD(LNumberTagD* instr) { PushSafepointRegistersScope scope(this); // NumberTagI and NumberTagD use the context from the frame, rather than // the environment's HContext or HInlinedContext value. - // They only call Runtime::kAllocateHeapNumber. + // They only call Runtime::kHiddenAllocateHeapNumber. // The corresponding HChange instructions are added in a phase that does // not have easy access to the local context. __ mov(esi, Operand(ebp, StandardFrameConstants::kContextOffset)); - __ CallRuntimeSaveDoubles(Runtime::kAllocateHeapNumber); + __ CallRuntimeSaveDoubles(Runtime::kHiddenAllocateHeapNumber); RecordSafepointWithRegisters( instr->pointer_map(), 0, Safepoint::kNoLazyDeopt); __ StoreToSafepointRegisterSlot(reg, eax); @@ -5926,7 +5926,7 @@ void LCodeGen::DoDeferredAllocate(LAllocate* instr) { __ push(Immediate(Smi::FromInt(flags))); CallRuntimeFromDeferred( - Runtime::kAllocateInTargetSpace, 2, instr, instr->context()); + Runtime::kHiddenAllocateInTargetSpace, 2, instr, instr->context()); __ StoreToSafepointRegisterSlot(result, eax); } @@ -5959,7 +5959,7 @@ void LCodeGen::DoRegExpLiteral(LRegExpLiteral* instr) { __ push(Immediate(Smi::FromInt(instr->hydrogen()->literal_index()))); __ push(Immediate(instr->hydrogen()->pattern())); __ push(Immediate(instr->hydrogen()->flags())); - CallRuntime(Runtime::kMaterializeRegExpLiteral, 4, instr); + CallRuntime(Runtime::kHiddenMaterializeRegExpLiteral, 4, instr); __ mov(ebx, eax); __ bind(&materialized); @@ -5971,7 +5971,7 @@ void LCodeGen::DoRegExpLiteral(LRegExpLiteral* instr) { __ bind(&runtime_allocate); __ push(ebx); __ push(Immediate(Smi::FromInt(size))); - CallRuntime(Runtime::kAllocateInNewSpace, 1, instr); + CallRuntime(Runtime::kHiddenAllocateInNewSpace, 1, instr); __ pop(ebx); __ bind(&allocated); @@ -6005,7 +6005,7 @@ void LCodeGen::DoFunctionLiteral(LFunctionLiteral* instr) { __ push(Immediate(instr->hydrogen()->shared_info())); __ push(Immediate(pretenure ? factory()->true_value() : factory()->false_value())); - CallRuntime(Runtime::kNewClosure, 3, instr); + CallRuntime(Runtime::kHiddenNewClosure, 3, instr); } } @@ -6185,7 +6185,7 @@ void LCodeGen::DoDummyUse(LDummyUse* instr) { void LCodeGen::DoDeferredStackCheck(LStackCheck* instr) { PushSafepointRegistersScope scope(this); __ mov(esi, Operand(ebp, StandardFrameConstants::kContextOffset)); - __ CallRuntimeSaveDoubles(Runtime::kStackGuard); + __ CallRuntimeSaveDoubles(Runtime::kHiddenStackGuard); RecordSafepointWithLazyDeopt( instr, RECORD_SAFEPOINT_WITH_REGISTERS_AND_NO_ARGUMENTS); ASSERT(instr->HasEnvironment()); diff --git a/src/ia32/macro-assembler-ia32.cc b/src/ia32/macro-assembler-ia32.cc index 0235a13..7847b3b 100644 --- a/src/ia32/macro-assembler-ia32.cc +++ b/src/ia32/macro-assembler-ia32.cc @@ -2429,7 +2429,7 @@ void MacroAssembler::CallApiFunctionAndReturn( bind(&promote_scheduled_exception); { FrameScope frame(this, StackFrame::INTERNAL); - CallRuntime(Runtime::kPromoteScheduledException, 0); + CallRuntime(Runtime::kHiddenPromoteScheduledException, 0); } jmp(&exception_handled); @@ -3021,9 +3021,9 @@ void MacroAssembler::Throw(BailoutReason reason) { // We don't actually want to generate a pile of code for this, so just // claim there is a stack frame, without generating one. FrameScope scope(this, StackFrame::NONE); - CallRuntime(Runtime::kThrowMessage, 1); + CallRuntime(Runtime::kHiddenThrowMessage, 1); } else { - CallRuntime(Runtime::kThrowMessage, 1); + CallRuntime(Runtime::kHiddenThrowMessage, 1); } // will not return here int3(); diff --git a/src/mips/builtins-mips.cc b/src/mips/builtins-mips.cc index 63eb5fc..03d6cc8 100644 --- a/src/mips/builtins-mips.cc +++ b/src/mips/builtins-mips.cc @@ -332,7 +332,7 @@ void Builtins::Generate_InOptimizationQueue(MacroAssembler* masm) { __ LoadRoot(t0, Heap::kStackLimitRootIndex); __ Branch(&ok, hs, sp, Operand(t0)); - CallRuntimePassFunction(masm, Runtime::kTryInstallOptimizedCode); + CallRuntimePassFunction(masm, Runtime::kHiddenTryInstallOptimizedCode); GenerateTailCallToReturnedCode(masm); __ bind(&ok); @@ -427,7 +427,7 @@ static void Generate_JSConstructStubHelper(MacroAssembler* masm, __ Push(a1, a2, a1); // a1 = Constructor. // The call will replace the stub, so the countdown is only done once. - __ CallRuntime(Runtime::kFinalizeInstanceSize, 1); + __ CallRuntime(Runtime::kHiddenFinalizeInstanceSize, 1); __ Pop(a1, a2); @@ -624,9 +624,9 @@ static void Generate_JSConstructStubHelper(MacroAssembler* masm, __ push(a1); // Argument for Runtime_NewObject. if (create_memento) { - __ CallRuntime(Runtime::kNewObjectWithAllocationSite, 2); + __ CallRuntime(Runtime::kHiddenNewObjectWithAllocationSite, 2); } else { - __ CallRuntime(Runtime::kNewObject, 1); + __ CallRuntime(Runtime::kHiddenNewObject, 1); } __ mov(t4, v0); @@ -854,7 +854,7 @@ void Builtins::Generate_JSConstructEntryTrampoline(MacroAssembler* masm) { void Builtins::Generate_CompileUnoptimized(MacroAssembler* masm) { - CallRuntimePassFunction(masm, Runtime::kCompileUnoptimized); + CallRuntimePassFunction(masm, Runtime::kHiddenCompileUnoptimized); GenerateTailCallToReturnedCode(masm); } @@ -867,7 +867,7 @@ static void CallCompileOptimized(MacroAssembler* masm, bool concurrent) { // Whether to compile in a background thread. __ Push(masm->isolate()->factory()->ToBoolean(concurrent)); - __ CallRuntime(Runtime::kCompileOptimized, 2); + __ CallRuntime(Runtime::kHiddenCompileOptimized, 2); // Restore receiver. __ Pop(a1); } @@ -976,7 +976,7 @@ static void Generate_NotifyStubFailureHelper(MacroAssembler* masm, // registers. __ MultiPush(kJSCallerSaved | kCalleeSaved); // Pass the function and deoptimization type to the runtime system. - __ CallRuntime(Runtime::kNotifyStubFailure, 0, save_doubles); + __ CallRuntime(Runtime::kHiddenNotifyStubFailure, 0, save_doubles); __ MultiPop(kJSCallerSaved | kCalleeSaved); } @@ -1002,7 +1002,7 @@ static void Generate_NotifyDeoptimizedHelper(MacroAssembler* masm, // Pass the function and deoptimization type to the runtime system. __ li(a0, Operand(Smi::FromInt(static_cast(type)))); __ push(a0); - __ CallRuntime(Runtime::kNotifyDeoptimized, 1); + __ CallRuntime(Runtime::kHiddenNotifyDeoptimized, 1); } // Get the full codegen state from the stack and untag it -> t2. @@ -1084,7 +1084,7 @@ void Builtins::Generate_OsrAfterStackCheck(MacroAssembler* masm) { __ Branch(&ok, hs, sp, Operand(at)); { FrameScope scope(masm, StackFrame::INTERNAL); - __ CallRuntime(Runtime::kStackGuard, 0); + __ CallRuntime(Runtime::kHiddenStackGuard, 0); } __ Jump(masm->isolate()->builtins()->OnStackReplacement(), RelocInfo::CODE_TARGET); diff --git a/src/mips/code-stubs-mips.cc b/src/mips/code-stubs-mips.cc index 3dd86f7..c119c8e 100644 --- a/src/mips/code-stubs-mips.cc +++ b/src/mips/code-stubs-mips.cc @@ -46,7 +46,7 @@ void FastNewClosureStub::InitializeInterfaceDescriptor( descriptor->register_param_count_ = 1; descriptor->register_params_ = registers; descriptor->deoptimization_handler_ = - Runtime::FunctionForId(Runtime::kNewClosureFromStubFailure)->entry; + Runtime::FunctionForId(Runtime::kHiddenNewClosureFromStubFailure)->entry; } @@ -88,7 +88,8 @@ void FastCloneShallowArrayStub::InitializeInterfaceDescriptor( descriptor->register_param_count_ = 3; descriptor->register_params_ = registers; descriptor->deoptimization_handler_ = - Runtime::FunctionForId(Runtime::kCreateArrayLiteralStubBailout)->entry; + Runtime::FunctionForId( + Runtime::kHiddenCreateArrayLiteralStubBailout)->entry; } @@ -99,7 +100,7 @@ void FastCloneShallowObjectStub::InitializeInterfaceDescriptor( descriptor->register_param_count_ = 4; descriptor->register_params_ = registers; descriptor->deoptimization_handler_ = - Runtime::FunctionForId(Runtime::kCreateObjectLiteral)->entry; + Runtime::FunctionForId(Runtime::kHiddenCreateObjectLiteral)->entry; } @@ -247,7 +248,7 @@ static void InitializeArrayConstructorDescriptor( descriptor->hint_stack_parameter_count_ = constant_stack_parameter_count; descriptor->function_mode_ = JS_FUNCTION_STUB_MODE; descriptor->deoptimization_handler_ = - Runtime::FunctionForId(Runtime::kArrayConstructor)->entry; + Runtime::FunctionForId(Runtime::kHiddenArrayConstructor)->entry; } @@ -275,7 +276,7 @@ static void InitializeInternalArrayConstructorDescriptor( descriptor->hint_stack_parameter_count_ = constant_stack_parameter_count; descriptor->function_mode_ = JS_FUNCTION_STUB_MODE; descriptor->deoptimization_handler_ = - Runtime::FunctionForId(Runtime::kInternalArrayConstructor)->entry; + Runtime::FunctionForId(Runtime::kHiddenInternalArrayConstructor)->entry; } @@ -2263,7 +2264,7 @@ void ArgumentsAccessStub::GenerateNewSloppySlow(MacroAssembler* masm) { __ sw(a3, MemOperand(sp, 1 * kPointerSize)); __ bind(&runtime); - __ TailCallRuntime(Runtime::kNewArgumentsFast, 3, 1); + __ TailCallRuntime(Runtime::kHiddenNewArgumentsFast, 3, 1); } @@ -2482,7 +2483,7 @@ void ArgumentsAccessStub::GenerateNewSloppyFast(MacroAssembler* masm) { // a2 = argument count (tagged) __ bind(&runtime); __ sw(a2, MemOperand(sp, 0 * kPointerSize)); // Patch argument count. - __ TailCallRuntime(Runtime::kNewArgumentsFast, 3, 1); + __ TailCallRuntime(Runtime::kHiddenNewArgumentsFast, 3, 1); } @@ -2580,7 +2581,7 @@ void ArgumentsAccessStub::GenerateNewStrict(MacroAssembler* masm) { // Do the runtime call to allocate the arguments object. __ bind(&runtime); - __ TailCallRuntime(Runtime::kNewStrictArgumentsFast, 3, 1); + __ TailCallRuntime(Runtime::kHiddenNewStrictArgumentsFast, 3, 1); } @@ -3364,7 +3365,7 @@ void StringCharCodeAtGenerator::GenerateSlow( } else { ASSERT(index_flags_ == STRING_INDEX_IS_ARRAY_INDEX); // NumberToSmi discards numbers that are not exact integers. - __ CallRuntime(Runtime::kNumberToSmi, 1); + __ CallRuntime(Runtime::kHiddenNumberToSmi, 1); } // Save the conversion result before the pop instructions below diff --git a/src/mips/full-codegen-mips.cc b/src/mips/full-codegen-mips.cc index a4155bc..87c0764 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 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 pairs) { void FullCodeGenerator::DeclareModules(Handle 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 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* 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); diff --git a/src/mips/lithium-codegen-mips.cc b/src/mips/lithium-codegen-mips.cc index 900ccd5..970a1bf 100644 --- a/src/mips/lithium-codegen-mips.cc +++ b/src/mips/lithium-codegen-mips.cc @@ -207,7 +207,7 @@ bool LCodeGen::GeneratePrologue() { __ CallStub(&stub); } else { __ push(a1); - __ CallRuntime(Runtime::kNewFunctionContext, 1); + __ CallRuntime(Runtime::kHiddenNewFunctionContext, 1); } RecordSafepoint(Safepoint::kNoLazyDeopt); // Context is returned in both v0. It replaces the context passed to us. @@ -3499,7 +3499,7 @@ void LCodeGen::DoDeclareGlobals(LDeclareGlobals* instr) { __ li(scratch1(), Operand(Smi::FromInt(instr->hydrogen()->flags()))); // The context is the first argument. __ Push(cp, scratch0(), scratch1()); - CallRuntime(Runtime::kDeclareGlobals, 3, instr); + CallRuntime(Runtime::kHiddenDeclareGlobals, 3, instr); } @@ -3588,7 +3588,7 @@ void LCodeGen::DoDeferredMathAbsTaggedHeapNumber(LMathAbs* instr) { // Slow case: Call the runtime system to do the number allocation. __ bind(&slow); - CallRuntimeFromDeferred(Runtime::kAllocateHeapNumber, 0, instr, + CallRuntimeFromDeferred(Runtime::kHiddenAllocateHeapNumber, 0, instr, instr->context()); // Set the pointer to the new heap number in tmp. if (!tmp1.is(v0)) @@ -4672,11 +4672,11 @@ void LCodeGen::DoDeferredNumberTagIU(LInstruction* instr, // NumberTagI and NumberTagD use the context from the frame, rather than // the environment's HContext or HInlinedContext value. - // They only call Runtime::kAllocateHeapNumber. + // They only call Runtime::kHiddenAllocateHeapNumber. // The corresponding HChange instructions are added in a phase that does // not have easy access to the local context. __ lw(cp, MemOperand(fp, StandardFrameConstants::kContextOffset)); - __ CallRuntimeSaveDoubles(Runtime::kAllocateHeapNumber); + __ CallRuntimeSaveDoubles(Runtime::kHiddenAllocateHeapNumber); RecordSafepointWithRegisters( instr->pointer_map(), 0, Safepoint::kNoLazyDeopt); __ Subu(v0, v0, kHeapObjectTag); @@ -4737,11 +4737,11 @@ void LCodeGen::DoDeferredNumberTagD(LNumberTagD* instr) { PushSafepointRegistersScope scope(this, Safepoint::kWithRegisters); // NumberTagI and NumberTagD use the context from the frame, rather than // the environment's HContext or HInlinedContext value. - // They only call Runtime::kAllocateHeapNumber. + // They only call Runtime::kHiddenAllocateHeapNumber. // The corresponding HChange instructions are added in a phase that does // not have easy access to the local context. __ lw(cp, MemOperand(fp, StandardFrameConstants::kContextOffset)); - __ CallRuntimeSaveDoubles(Runtime::kAllocateHeapNumber); + __ CallRuntimeSaveDoubles(Runtime::kHiddenAllocateHeapNumber); RecordSafepointWithRegisters( instr->pointer_map(), 0, Safepoint::kNoLazyDeopt); __ Subu(v0, v0, kHeapObjectTag); @@ -5351,7 +5351,7 @@ void LCodeGen::DoDeferredAllocate(LAllocate* instr) { __ Push(Smi::FromInt(flags)); CallRuntimeFromDeferred( - Runtime::kAllocateInTargetSpace, 2, instr, instr->context()); + Runtime::kHiddenAllocateInTargetSpace, 2, instr, instr->context()); __ StoreToSafepointRegisterSlot(v0, result); } @@ -5385,7 +5385,7 @@ void LCodeGen::DoRegExpLiteral(LRegExpLiteral* instr) { __ li(t1, Operand(instr->hydrogen()->pattern())); __ li(t0, Operand(instr->hydrogen()->flags())); __ Push(t3, t2, t1, t0); - CallRuntime(Runtime::kMaterializeRegExpLiteral, 4, instr); + CallRuntime(Runtime::kHiddenMaterializeRegExpLiteral, 4, instr); __ mov(a1, v0); __ bind(&materialized); @@ -5398,7 +5398,7 @@ void LCodeGen::DoRegExpLiteral(LRegExpLiteral* instr) { __ bind(&runtime_allocate); __ li(a0, Operand(Smi::FromInt(size))); __ Push(a1, a0); - CallRuntime(Runtime::kAllocateInNewSpace, 1, instr); + CallRuntime(Runtime::kHiddenAllocateInNewSpace, 1, instr); __ pop(a1); __ bind(&allocated); @@ -5432,7 +5432,7 @@ void LCodeGen::DoFunctionLiteral(LFunctionLiteral* instr) { __ li(a1, Operand(pretenure ? factory()->true_value() : factory()->false_value())); __ Push(cp, a2, a1); - CallRuntime(Runtime::kNewClosure, 3, instr); + CallRuntime(Runtime::kHiddenNewClosure, 3, instr); } } @@ -5656,7 +5656,7 @@ void LCodeGen::DoDummyUse(LDummyUse* instr) { void LCodeGen::DoDeferredStackCheck(LStackCheck* instr) { PushSafepointRegistersScope scope(this, Safepoint::kWithRegisters); LoadContextFromDeferred(instr->context()); - __ CallRuntimeSaveDoubles(Runtime::kStackGuard); + __ CallRuntimeSaveDoubles(Runtime::kHiddenStackGuard); RecordSafepointWithLazyDeopt( instr, RECORD_SAFEPOINT_WITH_REGISTERS_AND_NO_ARGUMENTS); ASSERT(instr->HasEnvironment()); diff --git a/src/mips/macro-assembler-mips.cc b/src/mips/macro-assembler-mips.cc index 06c7a1c..77c02e7 100644 --- a/src/mips/macro-assembler-mips.cc +++ b/src/mips/macro-assembler-mips.cc @@ -3986,7 +3986,7 @@ void MacroAssembler::CallApiFunctionAndReturn( { FrameScope frame(this, StackFrame::INTERNAL); CallExternalReference( - ExternalReference(Runtime::kPromoteScheduledException, isolate()), + ExternalReference(Runtime::kHiddenPromoteScheduledException, isolate()), 0); } jmp(&exception_handled); @@ -5451,9 +5451,9 @@ void MacroAssembler::Throw(BailoutReason reason) { // We don't actually want to generate a pile of code for this, so just // claim there is a stack frame, without generating one. FrameScope scope(this, StackFrame::NONE); - CallRuntime(Runtime::kThrowMessage, 1); + CallRuntime(Runtime::kHiddenThrowMessage, 1); } else { - CallRuntime(Runtime::kThrowMessage, 1); + CallRuntime(Runtime::kHiddenThrowMessage, 1); } // will not return here if (is_trampoline_pool_blocked()) { diff --git a/src/parser.cc b/src/parser.cc index c7ea634..a00adb8 100644 --- a/src/parser.cc +++ b/src/parser.cc @@ -1738,7 +1738,7 @@ void Parser::Declare(Declaration* declaration, bool resolve, bool* ok) { // same variable if it is declared several times. This is not a // semantic issue as long as we keep the source order, but it may be // a performance issue since it may lead to repeated - // Runtime::DeclareContextSlot() calls. + // RuntimeHidden_DeclareContextSlot calls. declaration_scope->AddDeclaration(declaration); if (mode == CONST_LEGACY && declaration_scope->is_global_scope()) { @@ -2216,7 +2216,7 @@ Block* Parser::ParseVariableDeclarations( // the number of arguments (1 or 2). initialize = factory()->NewCallRuntime( isolate()->factory()->InitializeConstGlobal_string(), - Runtime::FunctionForId(Runtime::kInitializeConstGlobal), + Runtime::FunctionForId(Runtime::kHiddenInitializeConstGlobal), arguments, pos); } else { // Add strict mode. @@ -3432,7 +3432,7 @@ FunctionLiteral* Parser::ParseFunctionLiteral( new(zone()) ZoneList(0, zone()); CallRuntime* allocation = factory()->NewCallRuntime( isolate()->factory()->empty_string(), - Runtime::FunctionForId(Runtime::kCreateJSGeneratorObject), + Runtime::FunctionForId(Runtime::kHiddenCreateJSGeneratorObject), arguments, pos); VariableProxy* init_proxy = factory()->NewVariableProxy( function_state_->generator_object_variable()); diff --git a/src/runtime.cc b/src/runtime.cc index b7fcb2d..41c91c5 100644 --- a/src/runtime.cc +++ b/src/runtime.cc @@ -468,7 +468,7 @@ static Handle CreateLiteralBoilerplate( } -RUNTIME_FUNCTION(MaybeObject*, Runtime_CreateObjectLiteral) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_CreateObjectLiteral) { HandleScope scope(isolate); ASSERT(args.length() == 4); CONVERT_ARG_HANDLE_CHECKED(FixedArray, literals, 0); @@ -570,7 +570,7 @@ static MaybeObject* CreateArrayLiteralImpl(Isolate* isolate, } -RUNTIME_FUNCTION(MaybeObject*, Runtime_CreateArrayLiteral) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_CreateArrayLiteral) { HandleScope scope(isolate); ASSERT(args.length() == 4); CONVERT_ARG_HANDLE_CHECKED(FixedArray, literals, 0); @@ -583,7 +583,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_CreateArrayLiteral) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_CreateArrayLiteralStubBailout) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_CreateArrayLiteralStubBailout) { HandleScope scope(isolate); ASSERT(args.length() == 3); CONVERT_ARG_HANDLE_CHECKED(FixedArray, literals, 0); @@ -2131,6 +2131,8 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_SetAccessorProperty) { CONVERT_ARG_HANDLE_CHECKED(Object, setter, 3); CONVERT_SMI_ARG_CHECKED(attribute, 4); CONVERT_SMI_ARG_CHECKED(access_control, 5); + RUNTIME_ASSERT(getter->IsUndefined() || getter->IsFunctionTemplateInfo()); + RUNTIME_ASSERT(setter->IsUndefined() || setter->IsFunctionTemplateInfo()); JSObject::DefineAccessor(object, name, InstantiateAccessorComponent(isolate, getter), @@ -2154,7 +2156,7 @@ static Failure* ThrowRedeclarationError(Isolate* isolate, } -RUNTIME_FUNCTION(MaybeObject*, Runtime_DeclareGlobals) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_DeclareGlobals) { HandleScope scope(isolate); ASSERT(args.length() == 3); Handle global = Handle( @@ -2249,7 +2251,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_DeclareGlobals) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_DeclareContextSlot) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_DeclareContextSlot) { HandleScope scope(isolate); ASSERT(args.length() == 4); @@ -2408,7 +2410,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_InitializeVarGlobal) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_InitializeConstGlobal) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_InitializeConstGlobal) { SealHandleScope shs(isolate); // All constants are declared with an initial value. The name // of the constant is the first argument and the initial value @@ -2485,7 +2487,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_InitializeConstGlobal) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_InitializeConstContextSlot) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_InitializeConstContextSlot) { HandleScope scope(isolate); ASSERT(args.length() == 3); @@ -2803,7 +2805,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_GetDefaultReceiver) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_MaterializeRegExpLiteral) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_MaterializeRegExpLiteral) { HandleScope scope(isolate); ASSERT(args.length() == 4); CONVERT_ARG_HANDLE_CHECKED(FixedArray, literals, 0); @@ -3121,7 +3123,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_SetExpectedNumberOfProperties) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_CreateJSGeneratorObject) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_CreateJSGeneratorObject) { HandleScope scope(isolate); ASSERT(args.length() == 0); @@ -3147,7 +3149,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_CreateJSGeneratorObject) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_SuspendJSGeneratorObject) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_SuspendJSGeneratorObject) { SealHandleScope shs(isolate); ASSERT(args.length() == 1); CONVERT_ARG_CHECKED(JSGeneratorObject, generator_object, 0); @@ -3198,7 +3200,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_SuspendJSGeneratorObject) { // inlined into GeneratorNext and GeneratorThrow. EmitGeneratorResumeResume is // called in any case, as it needs to reconstruct the stack frame and make space // for arguments and operands. -RUNTIME_FUNCTION(MaybeObject*, Runtime_ResumeJSGeneratorObject) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_ResumeJSGeneratorObject) { SealHandleScope shs(isolate); ASSERT(args.length() == 3); CONVERT_ARG_CHECKED(JSGeneratorObject, generator_object, 0); @@ -3246,7 +3248,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_ResumeJSGeneratorObject) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_ThrowGeneratorStateError) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_ThrowGeneratorStateError) { HandleScope scope(isolate); ASSERT(args.length() == 1); CONVERT_ARG_HANDLE_CHECKED(JSGeneratorObject, generator, 0); @@ -6924,7 +6926,7 @@ RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_NumberToString) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_NumberToStringSkipCache) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_NumberToStringSkipCache) { SealHandleScope shs(isolate); ASSERT(args.length() == 1); @@ -6949,24 +6951,6 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_NumberToInteger) { } -// ES6 draft 9.1.11 -RUNTIME_FUNCTION(MaybeObject*, Runtime_NumberToPositiveInteger) { - SealHandleScope shs(isolate); - ASSERT(args.length() == 1); - - CONVERT_DOUBLE_ARG_CHECKED(number, 0); - - // We do not include 0 so that we don't have to treat +0 / -0 cases. - if (number > 0 && number <= Smi::kMaxValue) { - return Smi::FromInt(static_cast(number)); - } - if (number <= 0) { - return Smi::FromInt(0); - } - return isolate->heap()->NumberFromDouble(DoubleToInteger(number)); -} - - RUNTIME_FUNCTION(MaybeObject*, Runtime_NumberToIntegerMapMinusZero) { SealHandleScope shs(isolate); ASSERT(args.length() == 1); @@ -7011,7 +6995,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_NumberToJSInt32) { // Converts a Number to a Smi, if possible. Returns NaN if the number is not // a small integer. -RUNTIME_FUNCTION(MaybeObject*, Runtime_NumberToSmi) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_NumberToSmi) { SealHandleScope shs(isolate); ASSERT(args.length() == 1); @@ -7030,7 +7014,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_NumberToSmi) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_AllocateHeapNumber) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_AllocateHeapNumber) { SealHandleScope shs(isolate); ASSERT(args.length() == 0); return isolate->heap()->AllocateHeapNumber(0); @@ -8020,7 +8004,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_DateSetValue) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_NewArgumentsFast) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_NewArgumentsFast) { HandleScope scope(isolate); ASSERT(args.length() == 3); @@ -8115,7 +8099,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_NewArgumentsFast) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_NewStrictArgumentsFast) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_NewStrictArgumentsFast) { SealHandleScope shs(isolate); ASSERT(args.length() == 3); @@ -8148,7 +8132,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_NewStrictArgumentsFast) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_NewClosureFromStubFailure) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_NewClosureFromStubFailure) { HandleScope scope(isolate); ASSERT(args.length() == 1); CONVERT_ARG_HANDLE_CHECKED(SharedFunctionInfo, shared, 0); @@ -8162,7 +8146,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_NewClosureFromStubFailure) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_NewClosure) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_NewClosure) { HandleScope scope(isolate); ASSERT(args.length() == 3); CONVERT_ARG_HANDLE_CHECKED(Context, context, 0); @@ -8428,7 +8412,7 @@ static MaybeObject* Runtime_NewObjectHelper(Isolate* isolate, } -RUNTIME_FUNCTION(MaybeObject*, Runtime_NewObject) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_NewObject) { HandleScope scope(isolate); ASSERT(args.length() == 1); @@ -8439,7 +8423,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_NewObject) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_NewObjectWithAllocationSite) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_NewObjectWithAllocationSite) { HandleScope scope(isolate); ASSERT(args.length() == 2); @@ -8456,7 +8440,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_NewObjectWithAllocationSite) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_FinalizeInstanceSize) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_FinalizeInstanceSize) { HandleScope scope(isolate); ASSERT(args.length() == 1); @@ -8467,7 +8451,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_FinalizeInstanceSize) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_CompileUnoptimized) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_CompileUnoptimized) { HandleScope scope(isolate); ASSERT(args.length() == 1); @@ -8496,7 +8480,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_CompileUnoptimized) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_CompileOptimized) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_CompileOptimized) { HandleScope scope(isolate); ASSERT(args.length() == 2); Handle function = args.at(0); @@ -8559,7 +8543,7 @@ class ActivationsFinder : public ThreadVisitor { }; -RUNTIME_FUNCTION(MaybeObject*, Runtime_NotifyStubFailure) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_NotifyStubFailure) { HandleScope scope(isolate); ASSERT(args.length() == 0); Deoptimizer* deoptimizer = Deoptimizer::Grab(isolate); @@ -8569,7 +8553,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_NotifyStubFailure) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_NotifyDeoptimized) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_NotifyDeoptimized) { HandleScope scope(isolate); ASSERT(args.length() == 1); RUNTIME_ASSERT(args[0]->IsSmi()); @@ -9021,7 +9005,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_GetConstructorDelegate) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_NewGlobalContext) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_NewGlobalContext) { SealHandleScope shs(isolate); ASSERT(args.length() == 2); @@ -9040,7 +9024,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_NewGlobalContext) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_NewFunctionContext) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_NewFunctionContext) { SealHandleScope shs(isolate); ASSERT(args.length() == 1); @@ -9050,7 +9034,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_NewFunctionContext) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_PushWithContext) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_PushWithContext) { SealHandleScope shs(isolate); ASSERT(args.length() == 2); JSReceiver* extension_object; @@ -9094,7 +9078,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_PushWithContext) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_PushCatchContext) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_PushCatchContext) { SealHandleScope shs(isolate); ASSERT(args.length() == 3); String* name = String::cast(args[0]); @@ -9120,7 +9104,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_PushCatchContext) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_PushBlockContext) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_PushBlockContext) { SealHandleScope shs(isolate); ASSERT(args.length() == 2); ScopeInfo* scope_info = ScopeInfo::cast(args[0]); @@ -9152,7 +9136,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_IsJSModule) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_PushModuleContext) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_PushModuleContext) { SealHandleScope shs(isolate); ASSERT(args.length() == 2); CONVERT_SMI_ARG_CHECKED(index, 0); @@ -9187,7 +9171,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_PushModuleContext) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_DeclareModules) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_DeclareModules) { HandleScope scope(isolate); ASSERT(args.length() == 1); CONVERT_ARG_HANDLE_CHECKED(FixedArray, descriptions, 0); @@ -9240,7 +9224,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_DeclareModules) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_DeleteContextSlot) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_DeleteContextSlot) { HandleScope scope(isolate); ASSERT(args.length() == 2); @@ -9426,17 +9410,17 @@ static ObjectPair LoadContextSlotHelper(Arguments args, } -RUNTIME_FUNCTION(ObjectPair, Runtime_LoadContextSlot) { +RUNTIME_FUNCTION(ObjectPair, RuntimeHidden_LoadContextSlot) { return LoadContextSlotHelper(args, isolate, true); } -RUNTIME_FUNCTION(ObjectPair, Runtime_LoadContextSlotNoReferenceError) { +RUNTIME_FUNCTION(ObjectPair, RuntimeHidden_LoadContextSlotNoReferenceError) { return LoadContextSlotHelper(args, isolate, false); } -RUNTIME_FUNCTION(MaybeObject*, Runtime_StoreContextSlot) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_StoreContextSlot) { HandleScope scope(isolate); ASSERT(args.length() == 4); @@ -9521,7 +9505,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_StoreContextSlot) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_Throw) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_Throw) { HandleScope scope(isolate); ASSERT(args.length() == 1); @@ -9529,7 +9513,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_Throw) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_ReThrow) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_ReThrow) { HandleScope scope(isolate); ASSERT(args.length() == 1); @@ -9537,14 +9521,14 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_ReThrow) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_PromoteScheduledException) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_PromoteScheduledException) { SealHandleScope shs(isolate); ASSERT_EQ(0, args.length()); return isolate->PromoteScheduledException(); } -RUNTIME_FUNCTION(MaybeObject*, Runtime_ThrowReferenceError) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_ThrowReferenceError) { HandleScope scope(isolate); ASSERT(args.length() == 1); @@ -9556,7 +9540,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_ThrowReferenceError) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_ThrowNotDateError) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_ThrowNotDateError) { HandleScope scope(isolate); ASSERT(args.length() == 0); return isolate->Throw(*isolate->factory()->NewTypeError( @@ -9564,7 +9548,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_ThrowNotDateError) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_ThrowMessage) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_ThrowMessage) { HandleScope scope(isolate); ASSERT(args.length() == 1); CONVERT_SMI_ARG_CHECKED(message_id, 0); @@ -9577,7 +9561,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_ThrowMessage) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_StackGuard) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_StackGuard) { SealHandleScope shs(isolate); ASSERT(args.length() == 0); @@ -9590,7 +9574,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_StackGuard) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_TryInstallOptimizedCode) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_TryInstallOptimizedCode) { HandleScope scope(isolate); ASSERT(args.length() == 1); CONVERT_ARG_HANDLE_CHECKED(JSFunction, function, 0); @@ -9607,7 +9591,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_TryInstallOptimizedCode) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_Interrupt) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_Interrupt) { SealHandleScope shs(isolate); ASSERT(args.length() == 0); return Execution::HandleStackGuardInterrupt(isolate); @@ -9907,7 +9891,7 @@ static ObjectPair CompileGlobalEval(Isolate* isolate, } -RUNTIME_FUNCTION(ObjectPair, Runtime_ResolvePossiblyDirectEval) { +RUNTIME_FUNCTION(ObjectPair, RuntimeHidden_ResolvePossiblyDirectEval) { HandleScope scope(isolate); ASSERT(args.length() == 5); @@ -9958,7 +9942,7 @@ static MaybeObject* Allocate(Isolate* isolate, } -RUNTIME_FUNCTION(MaybeObject*, Runtime_AllocateInNewSpace) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_AllocateInNewSpace) { SealHandleScope shs(isolate); ASSERT(args.length() == 1); CONVERT_SMI_ARG_CHECKED(size, 0); @@ -9966,7 +9950,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_AllocateInNewSpace) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_AllocateInTargetSpace) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_AllocateInTargetSpace) { SealHandleScope shs(isolate); ASSERT(args.length() == 2); CONVERT_SMI_ARG_CHECKED(size, 0); @@ -15024,7 +15008,7 @@ static MaybeObject* ArrayConstructorCommon(Isolate* isolate, } -RUNTIME_FUNCTION(MaybeObject*, Runtime_ArrayConstructor) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_ArrayConstructor) { HandleScope scope(isolate); // If we get 2 arguments then they are the stub parameters (constructor, type // info). If we get 4, then the first one is a pointer to the arguments @@ -15061,7 +15045,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_ArrayConstructor) { } -RUNTIME_FUNCTION(MaybeObject*, Runtime_InternalArrayConstructor) { +RUNTIME_FUNCTION(MaybeObject*, RuntimeHidden_InternalArrayConstructor) { HandleScope scope(isolate); Arguments empty_args(0, NULL); bool no_caller_args = args.length() == 1; diff --git a/src/runtime.h b/src/runtime.h index 28dbe30..407bf6f 100644 --- a/src/runtime.h +++ b/src/runtime.h @@ -83,13 +83,6 @@ namespace internal { F(Apply, 5, 1) \ F(GetFunctionDelegate, 1, 1) \ F(GetConstructorDelegate, 1, 1) \ - F(NewArgumentsFast, 3, 1) \ - F(NewStrictArgumentsFast, 3, 1) \ - F(CompileUnoptimized, 1, 1) \ - F(CompileOptimized, 2, 1) \ - F(TryInstallOptimizedCode, 1, 1) \ - F(NotifyDeoptimized, 1, 1) \ - F(NotifyStubFailure, 0, 1) \ F(DeoptimizeFunction, 1, 1) \ F(ClearFunctionTypeFeedback, 1, 1) \ F(RunningInSimulator, 0, 1) \ @@ -101,8 +94,6 @@ namespace internal { F(UnblockConcurrentRecompilation, 0, 1) \ F(CompileForOnStackReplacement, 1, 1) \ F(SetAllocationTimeout, -1 /* 2 || 3 */, 1) \ - F(AllocateInNewSpace, 1, 1) \ - F(AllocateInTargetSpace, 2, 1) \ F(SetNativeFlag, 1, 1) \ F(SetInlineBuiltinFlag, 1, 1) \ F(StoreArrayLiteralElement, 5, 1) \ @@ -130,14 +121,10 @@ namespace internal { F(URIEscape, 1, 1) \ F(URIUnescape, 1, 1) \ \ - F(NumberToStringSkipCache, 1, 1) \ F(NumberToInteger, 1, 1) \ - F(NumberToPositiveInteger, 1, 1) \ F(NumberToIntegerMapMinusZero, 1, 1) \ F(NumberToJSUint32, 1, 1) \ F(NumberToJSInt32, 1, 1) \ - F(NumberToSmi, 1, 1) \ - F(AllocateHeapNumber, 0, 1) \ \ /* Arithmetic operations */ \ F(NumberAdd, 2, 1) \ @@ -258,16 +245,12 @@ namespace internal { F(DateSetValue, 3, 1) \ F(DateCacheVersion, 0, 1) \ \ - /* Numbers */ \ - \ /* Globals */ \ F(CompileString, 2, 1) \ - F(GlobalPrint, 1, 1) \ \ /* Eval */ \ F(GlobalReceiver, 1, 1) \ F(IsAttachedGlobal, 1, 1) \ - F(ResolvePossiblyDirectEval, 5, 2) \ \ F(SetProperty, -1 /* 4 or 5 */, 1) \ F(DefineOrRedefineDataProperty, 4, 1) \ @@ -281,24 +264,10 @@ namespace internal { F(GetArrayKeys, 2, 1) \ F(MoveArrayContents, 2, 1) \ F(EstimateNumberOfElements, 1, 1) \ - F(ArrayConstructor, -1, 1) \ - F(InternalArrayConstructor, -1, 1) \ \ /* Getters and Setters */ \ F(LookupAccessor, 3, 1) \ \ - /* Literals */ \ - F(MaterializeRegExpLiteral, 4, 1)\ - F(CreateObjectLiteral, 4, 1) \ - F(CreateArrayLiteral, 4, 1) \ - F(CreateArrayLiteralStubBailout, 3, 1) \ - \ - /* Harmony generators */ \ - F(CreateJSGeneratorObject, 0, 1) \ - F(SuspendJSGeneratorObject, 1, 1) \ - F(ResumeJSGeneratorObject, 3, 1) \ - F(ThrowGeneratorStateError, 1, 1) \ - \ /* ES5 */ \ F(ObjectFreeze, 1, 1) \ \ @@ -397,44 +366,15 @@ namespace internal { F(DataViewSetFloat64, 4, 1) \ \ /* Statements */ \ - F(NewClosure, 3, 1) \ - F(NewClosureFromStubFailure, 1, 1) \ - F(NewObject, 1, 1) \ - F(NewObjectWithAllocationSite, 2, 1) \ F(NewObjectFromBound, 1, 1) \ - F(FinalizeInstanceSize, 1, 1) \ - F(Throw, 1, 1) \ - F(ReThrow, 1, 1) \ - F(ThrowReferenceError, 1, 1) \ - F(ThrowNotDateError, 0, 1) \ - F(ThrowMessage, 1, 1) \ - F(StackGuard, 0, 1) \ - F(Interrupt, 0, 1) \ - F(PromoteScheduledException, 0, 1) \ - \ - /* Contexts */ \ - F(NewGlobalContext, 2, 1) \ - F(NewFunctionContext, 1, 1) \ - F(PushWithContext, 2, 1) \ - F(PushCatchContext, 3, 1) \ - F(PushBlockContext, 2, 1) \ - F(PushModuleContext, 2, 1) \ - F(DeleteContextSlot, 2, 1) \ - F(LoadContextSlot, 2, 2) \ - F(LoadContextSlotNoReferenceError, 2, 2) \ - F(StoreContextSlot, 4, 1) \ \ /* Declarations and initialization */ \ - F(DeclareGlobals, 3, 1) \ - F(DeclareModules, 1, 1) \ - F(DeclareContextSlot, 4, 1) \ F(InitializeVarGlobal, -1 /* 2 or 3 */, 1) \ - F(InitializeConstGlobal, 2, 1) \ - F(InitializeConstContextSlot, 3, 1) \ F(OptimizeObjectForAddingMultipleProperties, 2, 1) \ \ /* Debugging */ \ F(DebugPrint, 1, 1) \ + F(GlobalPrint, 1, 1) \ F(DebugTrace, 0, 1) \ F(TraceEnter, 0, 1) \ F(TraceExit, 1, 1) \ @@ -624,7 +564,77 @@ namespace internal { F(StringCompare, 2, 1) \ F(StringCharCodeAt, 2, 1) \ F(Log, 3, 1) \ - F(GetFromCache, 2, 1) + F(GetFromCache, 2, 1) \ + \ + /* Compilation */ \ + F(CompileUnoptimized, 1, 1) \ + F(CompileOptimized, 2, 1) \ + F(TryInstallOptimizedCode, 1, 1) \ + F(NotifyDeoptimized, 1, 1) \ + F(NotifyStubFailure, 0, 1) \ + \ + /* Utilities */ \ + F(AllocateInNewSpace, 1, 1) \ + F(AllocateInTargetSpace, 2, 1) \ + F(AllocateHeapNumber, 0, 1) \ + F(NumberToSmi, 1, 1) \ + F(NumberToStringSkipCache, 1, 1) \ + \ + F(NewArgumentsFast, 3, 1) \ + F(NewStrictArgumentsFast, 3, 1) \ + \ + /* Harmony generators */ \ + F(CreateJSGeneratorObject, 0, 1) \ + F(SuspendJSGeneratorObject, 1, 1) \ + F(ResumeJSGeneratorObject, 3, 1) \ + F(ThrowGeneratorStateError, 1, 1) \ + \ + /* Arrays */ \ + F(ArrayConstructor, -1, 1) \ + F(InternalArrayConstructor, -1, 1) \ + \ + /* Literals */ \ + F(MaterializeRegExpLiteral, 4, 1)\ + F(CreateObjectLiteral, 4, 1) \ + F(CreateArrayLiteral, 4, 1) \ + F(CreateArrayLiteralStubBailout, 3, 1) \ + \ + /* Statements */ \ + F(NewClosure, 3, 1) \ + F(NewClosureFromStubFailure, 1, 1) \ + F(NewObject, 1, 1) \ + F(NewObjectWithAllocationSite, 2, 1) \ + F(FinalizeInstanceSize, 1, 1) \ + F(Throw, 1, 1) \ + F(ReThrow, 1, 1) \ + F(ThrowReferenceError, 1, 1) \ + F(ThrowNotDateError, 0, 1) \ + F(ThrowMessage, 1, 1) \ + F(StackGuard, 0, 1) \ + F(Interrupt, 0, 1) \ + F(PromoteScheduledException, 0, 1) \ + \ + /* Contexts */ \ + F(NewGlobalContext, 2, 1) \ + F(NewFunctionContext, 1, 1) \ + F(PushWithContext, 2, 1) \ + F(PushCatchContext, 3, 1) \ + F(PushBlockContext, 2, 1) \ + F(PushModuleContext, 2, 1) \ + F(DeleteContextSlot, 2, 1) \ + F(LoadContextSlot, 2, 2) \ + F(LoadContextSlotNoReferenceError, 2, 2) \ + F(StoreContextSlot, 4, 1) \ + \ + /* Declarations and initialization */ \ + F(DeclareGlobals, 3, 1) \ + F(DeclareModules, 1, 1) \ + F(DeclareContextSlot, 4, 1) \ + F(InitializeConstGlobal, 2, 1) \ + F(InitializeConstContextSlot, 3, 1) \ + \ + /* Eval */ \ + F(ResolvePossiblyDirectEval, 5, 2) // ---------------------------------------------------------------------------- // INLINE_FUNCTION_LIST defines all inlined functions accessed diff --git a/src/serialize.cc b/src/serialize.cc index 219761e..45bc8f2 100644 --- a/src/serialize.cc +++ b/src/serialize.cc @@ -508,11 +508,12 @@ void ExternalReferenceTable::PopulateTable(Isolate* isolate) { UNCLASSIFIED, 52, "cpu_features"); - Add(ExternalReference(Runtime::kAllocateInNewSpace, isolate).address(), + Add(ExternalReference(Runtime::kHiddenAllocateInNewSpace, isolate).address(), UNCLASSIFIED, 53, "Runtime::AllocateInNewSpace"); - Add(ExternalReference(Runtime::kAllocateInTargetSpace, isolate).address(), + Add(ExternalReference( + Runtime::kHiddenAllocateInTargetSpace, isolate).address(), UNCLASSIFIED, 54, "Runtime::AllocateInTargetSpace"); diff --git a/src/x64/builtins-x64.cc b/src/x64/builtins-x64.cc index 45df985..d5b1a73 100644 --- a/src/x64/builtins-x64.cc +++ b/src/x64/builtins-x64.cc @@ -114,7 +114,7 @@ void Builtins::Generate_InOptimizationQueue(MacroAssembler* masm) { __ CompareRoot(rsp, Heap::kStackLimitRootIndex); __ j(above_equal, &ok); - CallRuntimePassFunction(masm, Runtime::kTryInstallOptimizedCode); + CallRuntimePassFunction(masm, Runtime::kHiddenTryInstallOptimizedCode); GenerateTailCallToReturnedCode(masm); __ bind(&ok); @@ -204,7 +204,7 @@ static void Generate_JSConstructStubHelper(MacroAssembler* masm, __ Push(rdi); // constructor // The call will replace the stub, so the countdown is only done once. - __ CallRuntime(Runtime::kFinalizeInstanceSize, 1); + __ CallRuntime(Runtime::kHiddenFinalizeInstanceSize, 1); __ Pop(rdi); __ Pop(rax); @@ -373,9 +373,9 @@ static void Generate_JSConstructStubHelper(MacroAssembler* masm, __ movp(rdi, Operand(rsp, offset)); __ Push(rdi); if (create_memento) { - __ CallRuntime(Runtime::kNewObjectWithAllocationSite, 2); + __ CallRuntime(Runtime::kHiddenNewObjectWithAllocationSite, 2); } else { - __ CallRuntime(Runtime::kNewObject, 1); + __ CallRuntime(Runtime::kHiddenNewObject, 1); } __ movp(rbx, rax); // store result in rbx @@ -628,7 +628,7 @@ void Builtins::Generate_JSConstructEntryTrampoline(MacroAssembler* masm) { void Builtins::Generate_CompileUnoptimized(MacroAssembler* masm) { - CallRuntimePassFunction(masm, Runtime::kCompileUnoptimized); + CallRuntimePassFunction(masm, Runtime::kHiddenCompileUnoptimized); GenerateTailCallToReturnedCode(masm); } @@ -643,7 +643,7 @@ static void CallCompileOptimized(MacroAssembler* masm, // Whether to compile in a background thread. __ Push(masm->isolate()->factory()->ToBoolean(concurrent)); - __ CallRuntime(Runtime::kCompileOptimized, 2); + __ CallRuntime(Runtime::kHiddenCompileOptimized, 2); // Restore receiver. __ Pop(rdi); } @@ -744,7 +744,7 @@ static void Generate_NotifyStubFailureHelper(MacroAssembler* masm, // stubs that tail call the runtime on deopts passing their parameters in // registers. __ Pushad(); - __ CallRuntime(Runtime::kNotifyStubFailure, 0, save_doubles); + __ CallRuntime(Runtime::kHiddenNotifyStubFailure, 0, save_doubles); __ Popad(); // Tear down internal frame. } @@ -773,7 +773,7 @@ static void Generate_NotifyDeoptimizedHelper(MacroAssembler* masm, // Pass the deoptimization type to the runtime system. __ Push(Smi::FromInt(static_cast(type))); - __ CallRuntime(Runtime::kNotifyDeoptimized, 1); + __ CallRuntime(Runtime::kHiddenNotifyDeoptimized, 1); // Tear down internal frame. } @@ -1486,7 +1486,7 @@ void Builtins::Generate_OsrAfterStackCheck(MacroAssembler* masm) { __ j(above_equal, &ok); { FrameScope scope(masm, StackFrame::INTERNAL); - __ CallRuntime(Runtime::kStackGuard, 0); + __ CallRuntime(Runtime::kHiddenStackGuard, 0); } __ jmp(masm->isolate()->builtins()->OnStackReplacement(), RelocInfo::CODE_TARGET); diff --git a/src/x64/code-stubs-x64.cc b/src/x64/code-stubs-x64.cc index b070d05..cfb7f75 100644 --- a/src/x64/code-stubs-x64.cc +++ b/src/x64/code-stubs-x64.cc @@ -46,7 +46,7 @@ void FastNewClosureStub::InitializeInterfaceDescriptor( descriptor->register_param_count_ = 1; descriptor->register_params_ = registers; descriptor->deoptimization_handler_ = - Runtime::FunctionForId(Runtime::kNewClosureFromStubFailure)->entry; + Runtime::FunctionForId(Runtime::kHiddenNewClosureFromStubFailure)->entry; } @@ -88,7 +88,8 @@ void FastCloneShallowArrayStub::InitializeInterfaceDescriptor( descriptor->register_param_count_ = 3; descriptor->register_params_ = registers; descriptor->deoptimization_handler_ = - Runtime::FunctionForId(Runtime::kCreateArrayLiteralStubBailout)->entry; + Runtime::FunctionForId( + Runtime::kHiddenCreateArrayLiteralStubBailout)->entry; } @@ -99,7 +100,7 @@ void FastCloneShallowObjectStub::InitializeInterfaceDescriptor( descriptor->register_param_count_ = 4; descriptor->register_params_ = registers; descriptor->deoptimization_handler_ = - Runtime::FunctionForId(Runtime::kCreateObjectLiteral)->entry; + Runtime::FunctionForId(Runtime::kHiddenCreateObjectLiteral)->entry; } @@ -233,7 +234,7 @@ static void InitializeArrayConstructorDescriptor( descriptor->hint_stack_parameter_count_ = constant_stack_parameter_count; descriptor->function_mode_ = JS_FUNCTION_STUB_MODE; descriptor->deoptimization_handler_ = - Runtime::FunctionForId(Runtime::kArrayConstructor)->entry; + Runtime::FunctionForId(Runtime::kHiddenArrayConstructor)->entry; } @@ -261,7 +262,7 @@ static void InitializeInternalArrayConstructorDescriptor( descriptor->hint_stack_parameter_count_ = constant_stack_parameter_count; descriptor->function_mode_ = JS_FUNCTION_STUB_MODE; descriptor->deoptimization_handler_ = - Runtime::FunctionForId(Runtime::kInternalArrayConstructor)->entry; + Runtime::FunctionForId(Runtime::kHiddenInternalArrayConstructor)->entry; } @@ -1203,7 +1204,7 @@ void ArgumentsAccessStub::GenerateNewSloppyFast(MacroAssembler* masm) { __ bind(&runtime); __ Integer32ToSmi(rcx, rcx); __ movp(args.GetArgumentOperand(2), rcx); // Patch argument count. - __ TailCallRuntime(Runtime::kNewArgumentsFast, 3, 1); + __ TailCallRuntime(Runtime::kHiddenNewArgumentsFast, 3, 1); } @@ -1230,7 +1231,7 @@ void ArgumentsAccessStub::GenerateNewSloppySlow(MacroAssembler* masm) { __ movp(args.GetArgumentOperand(1), rdx); __ bind(&runtime); - __ TailCallRuntime(Runtime::kNewArgumentsFast, 3, 1); + __ TailCallRuntime(Runtime::kHiddenNewArgumentsFast, 3, 1); } @@ -1331,7 +1332,7 @@ void ArgumentsAccessStub::GenerateNewStrict(MacroAssembler* masm) { // Do the runtime call to allocate the arguments object. __ bind(&runtime); - __ TailCallRuntime(Runtime::kNewStrictArgumentsFast, 3, 1); + __ TailCallRuntime(Runtime::kHiddenNewStrictArgumentsFast, 3, 1); } @@ -3009,7 +3010,7 @@ void StringCharCodeAtGenerator::GenerateSlow( } else { ASSERT(index_flags_ == STRING_INDEX_IS_ARRAY_INDEX); // NumberToSmi discards numbers that are not exact integers. - __ CallRuntime(Runtime::kNumberToSmi, 1); + __ CallRuntime(Runtime::kHiddenNumberToSmi, 1); } if (!index_.is(rax)) { // Save the conversion result before the pop instructions below diff --git a/src/x64/full-codegen-x64.cc b/src/x64/full-codegen-x64.cc index 3d3fd06..f0b9438 100644 --- a/src/x64/full-codegen-x64.cc +++ b/src/x64/full-codegen-x64.cc @@ -224,13 +224,13 @@ void FullCodeGenerator::Generate() { if (FLAG_harmony_scoping && info->scope()->is_global_scope()) { __ Push(rdi); __ 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(rdi); - __ CallRuntime(Runtime::kNewFunctionContext, 1); + __ CallRuntime(Runtime::kHiddenNewFunctionContext, 1); } function_in_register = false; // Context is returned in rax. It replaces the context passed to us. @@ -838,7 +838,7 @@ void FullCodeGenerator::VisitVariableDeclaration( } else { __ Push(Smi::FromInt(0)); // Indicates no initial value. } - __ CallRuntime(Runtime::kDeclareContextSlot, 4); + __ CallRuntime(Runtime::kHiddenDeclareContextSlot, 4); break; } } @@ -892,7 +892,7 @@ void FullCodeGenerator::VisitFunctionDeclaration( __ Push(variable->name()); __ Push(Smi::FromInt(NONE)); VisitForStackValue(declaration->fun()); - __ CallRuntime(Runtime::kDeclareContextSlot, 4); + __ CallRuntime(Runtime::kHiddenDeclareContextSlot, 4); break; } } @@ -962,7 +962,7 @@ void FullCodeGenerator::DeclareGlobals(Handle pairs) { __ Push(rsi); // The context is the first argument. __ Push(pairs); __ Push(Smi::FromInt(DeclareGlobalsFlags())); - __ CallRuntime(Runtime::kDeclareGlobals, 3); + __ CallRuntime(Runtime::kHiddenDeclareGlobals, 3); // Return value is ignored. } @@ -970,7 +970,7 @@ void FullCodeGenerator::DeclareGlobals(Handle pairs) { void FullCodeGenerator::DeclareModules(Handle descriptions) { // Call the runtime to declare the modules. __ Push(descriptions); - __ CallRuntime(Runtime::kDeclareModules, 1); + __ CallRuntime(Runtime::kHiddenDeclareModules, 1); // Return value is ignored. } @@ -1333,7 +1333,7 @@ void FullCodeGenerator::EmitNewClosure(Handle info, __ Push(pretenure ? isolate()->factory()->true_value() : isolate()->factory()->false_value()); - __ CallRuntime(Runtime::kNewClosure, 3); + __ CallRuntime(Runtime::kHiddenNewClosure, 3); } context()->Plug(rax); } @@ -1458,7 +1458,7 @@ void FullCodeGenerator::EmitDynamicLookupFastCase(Variable* var, __ LoadRoot(rax, Heap::kUndefinedValueRootIndex); } else { // LET || CONST __ Push(var->name()); - __ CallRuntime(Runtime::kThrowReferenceError, 1); + __ CallRuntime(Runtime::kHiddenThrowReferenceError, 1); } } __ jmp(done); @@ -1535,7 +1535,7 @@ void FullCodeGenerator::EmitVariableLoad(VariableProxy* proxy) { // Throw a reference error when using an uninitialized let/const // binding in harmony mode. __ Push(var->name()); - __ CallRuntime(Runtime::kThrowReferenceError, 1); + __ CallRuntime(Runtime::kHiddenThrowReferenceError, 1); } else { // Uninitalized const bindings outside of harmony mode are unholed. ASSERT(var->mode() == CONST_LEGACY); @@ -1559,7 +1559,7 @@ void FullCodeGenerator::EmitVariableLoad(VariableProxy* proxy) { __ bind(&slow); __ Push(rsi); // Context. __ Push(var->name()); - __ CallRuntime(Runtime::kLoadContextSlot, 2); + __ CallRuntime(Runtime::kHiddenLoadContextSlot, 2); __ bind(&done); context()->Plug(rax); break; @@ -1590,7 +1590,7 @@ void FullCodeGenerator::VisitRegExpLiteral(RegExpLiteral* expr) { __ Push(Smi::FromInt(expr->literal_index())); __ Push(expr->pattern()); __ Push(expr->flags()); - __ CallRuntime(Runtime::kMaterializeRegExpLiteral, 4); + __ CallRuntime(Runtime::kHiddenMaterializeRegExpLiteral, 4); __ movp(rbx, rax); __ bind(&materialized); @@ -1602,7 +1602,7 @@ void FullCodeGenerator::VisitRegExpLiteral(RegExpLiteral* expr) { __ bind(&runtime_allocate); __ Push(rbx); __ Push(Smi::FromInt(size)); - __ CallRuntime(Runtime::kAllocateInNewSpace, 1); + __ CallRuntime(Runtime::kHiddenAllocateInNewSpace, 1); __ Pop(rbx); __ bind(&allocated); @@ -1651,7 +1651,7 @@ void FullCodeGenerator::VisitObjectLiteral(ObjectLiteral* expr) { __ Push(Smi::FromInt(expr->literal_index())); __ Push(constant_properties); __ Push(Smi::FromInt(flags)); - __ CallRuntime(Runtime::kCreateObjectLiteral, 4); + __ CallRuntime(Runtime::kHiddenCreateObjectLiteral, 4); } else { __ movp(rdi, Operand(rbp, JavaScriptFrameConstants::kFunctionOffset)); __ movp(rax, FieldOperand(rdi, JSFunction::kLiteralsOffset)); @@ -1804,7 +1804,7 @@ void FullCodeGenerator::VisitArrayLiteral(ArrayLiteral* expr) { __ Push(Smi::FromInt(expr->literal_index())); __ Push(constant_elements); __ Push(Smi::FromInt(flags)); - __ CallRuntime(Runtime::kCreateArrayLiteral, 4); + __ CallRuntime(Runtime::kHiddenCreateArrayLiteral, 4); } else { ASSERT(IsFastSmiOrObjectElementsKind(constant_elements_kind) || FLAG_smi_only_arrays); @@ -2016,7 +2016,7 @@ void FullCodeGenerator::VisitYield(Yield* expr) { __ cmpp(rsp, rbx); __ j(equal, &post_runtime); __ Push(rax); // generator object - __ CallRuntime(Runtime::kSuspendJSGeneratorObject, 1); + __ CallRuntime(Runtime::kHiddenSuspendJSGeneratorObject, 1); __ movp(context_register(), Operand(rbp, StandardFrameConstants::kContextOffset)); __ bind(&post_runtime); @@ -2085,7 +2085,7 @@ void FullCodeGenerator::VisitYield(Yield* expr) { __ movp(rcx, rsi); __ RecordWriteField(rax, JSGeneratorObject::kContextOffset, rcx, rdx, kDontSaveFPRegs); - __ CallRuntime(Runtime::kSuspendJSGeneratorObject, 1); + __ CallRuntime(Runtime::kHiddenSuspendJSGeneratorObject, 1); __ movp(context_register(), Operand(rbp, StandardFrameConstants::kContextOffset)); __ Pop(rax); // result @@ -2139,7 +2139,7 @@ void FullCodeGenerator::EmitGeneratorResume(Expression *generator, Expression *value, JSGeneratorObject::ResumeMode resume_mode) { // The value stays in rax, 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. // rbx will hold the generator object until the activation has been resumed. VisitForStackValue(generator); @@ -2220,7 +2220,7 @@ void FullCodeGenerator::EmitGeneratorResume(Expression *generator, __ Push(rbx); __ Push(result_register()); __ Push(Smi::FromInt(resume_mode)); - __ CallRuntime(Runtime::kResumeJSGeneratorObject, 3); + __ CallRuntime(Runtime::kHiddenResumeJSGeneratorObject, 3); // Not reached: the runtime call returns elsewhere. __ Abort(kGeneratorFailedToResume); @@ -2234,14 +2234,14 @@ void FullCodeGenerator::EmitGeneratorResume(Expression *generator, } else { // Throw the provided value. __ Push(rax); - __ 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(rbx); - __ CallRuntime(Runtime::kThrowGeneratorStateError, 1); + __ CallRuntime(Runtime::kHiddenThrowGeneratorStateError, 1); __ bind(&done); context()->Plug(result_register()); @@ -2259,7 +2259,7 @@ void FullCodeGenerator::EmitCreateIteratorResult(bool done) { __ bind(&gc_required); __ Push(Smi::FromInt(map->instance_size())); - __ CallRuntime(Runtime::kAllocateInNewSpace, 1); + __ CallRuntime(Runtime::kHiddenAllocateInNewSpace, 1); __ movp(context_register(), Operand(rbp, StandardFrameConstants::kContextOffset)); @@ -2438,7 +2438,7 @@ void FullCodeGenerator::EmitCallStoreContextSlot( __ Push(rsi); // Context. __ Push(name); __ Push(Smi::FromInt(strict_mode)); - __ CallRuntime(Runtime::kStoreContextSlot, 4); + __ CallRuntime(Runtime::kHiddenStoreContextSlot, 4); } @@ -2457,7 +2457,7 @@ void FullCodeGenerator::EmitVariableAssignment(Variable* var, __ Push(rax); __ Push(rsi); __ Push(var->name()); - __ CallRuntime(Runtime::kInitializeConstContextSlot, 3); + __ CallRuntime(Runtime::kHiddenInitializeConstContextSlot, 3); } else { ASSERT(var->IsStackLocal() || var->IsContextSlot()); Label skip; @@ -2481,7 +2481,7 @@ void FullCodeGenerator::EmitVariableAssignment(Variable* var, __ CompareRoot(rdx, Heap::kTheHoleValueRootIndex); __ j(not_equal, &assign, Label::kNear); __ Push(var->name()); - __ CallRuntime(Runtime::kThrowReferenceError, 1); + __ CallRuntime(Runtime::kHiddenThrowReferenceError, 1); __ bind(&assign); EmitStoreToStackLocalOrContextSlot(var, location); } @@ -2708,7 +2708,7 @@ void FullCodeGenerator::EmitResolvePossiblyDirectEval(int arg_count) { __ Push(Smi::FromInt(scope()->start_position())); // Do the runtime call. - __ CallRuntime(Runtime::kResolvePossiblyDirectEval, 5); + __ CallRuntime(Runtime::kHiddenResolvePossiblyDirectEval, 5); } @@ -2724,8 +2724,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 call. + // 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* args = expr->arguments(); int arg_count = args->length(); @@ -2775,7 +2775,7 @@ void FullCodeGenerator::VisitCall(Call* expr) { // the object holding it (returned in rdx). __ Push(context_register()); __ Push(proxy->name()); - __ CallRuntime(Runtime::kLoadContextSlot, 2); + __ CallRuntime(Runtime::kHiddenLoadContextSlot, 2); __ Push(rax); // Function. __ Push(rdx); // Receiver. @@ -3434,7 +3434,7 @@ void FullCodeGenerator::EmitDateField(CallRuntime* expr) { } __ bind(¬_date_object); - __ CallRuntime(Runtime::kThrowNotDateError, 0); + __ CallRuntime(Runtime::kHiddenThrowNotDateError, 0); __ bind(&done); context()->Plug(rax); } @@ -4232,7 +4232,7 @@ void FullCodeGenerator::VisitUnaryOperation(UnaryOperation* expr) { // context where the variable was introduced. __ Push(context_register()); __ Push(var->name()); - __ CallRuntime(Runtime::kDeleteContextSlot, 2); + __ CallRuntime(Runtime::kHiddenDeleteContextSlot, 2); context()->Plug(rax); } } else { @@ -4519,7 +4519,7 @@ void FullCodeGenerator::VisitForTypeofValue(Expression* expr) { __ bind(&slow); __ Push(rsi); __ Push(proxy->name()); - __ CallRuntime(Runtime::kLoadContextSlotNoReferenceError, 2); + __ CallRuntime(Runtime::kHiddenLoadContextSlotNoReferenceError, 2); PrepareForBailout(expr, TOS_REG); __ bind(&done); diff --git a/src/x64/lithium-codegen-x64.cc b/src/x64/lithium-codegen-x64.cc index b0236a4..894a4dd 100644 --- a/src/x64/lithium-codegen-x64.cc +++ b/src/x64/lithium-codegen-x64.cc @@ -223,7 +223,7 @@ bool LCodeGen::GeneratePrologue() { __ CallStub(&stub); } else { __ Push(rdi); - __ CallRuntime(Runtime::kNewFunctionContext, 1); + __ CallRuntime(Runtime::kHiddenNewFunctionContext, 1); } RecordSafepoint(Safepoint::kNoLazyDeopt); // Context is returned in rax. It replaces the context passed to us. @@ -3330,7 +3330,7 @@ void LCodeGen::DoDeclareGlobals(LDeclareGlobals* instr) { __ Push(rsi); // The context is the first argument. __ Push(instr->hydrogen()->pairs()); __ Push(Smi::FromInt(instr->hydrogen()->flags())); - CallRuntime(Runtime::kDeclareGlobals, 3, instr); + CallRuntime(Runtime::kHiddenDeclareGlobals, 3, instr); } @@ -3462,7 +3462,7 @@ void LCodeGen::DoDeferredMathAbsTaggedHeapNumber(LMathAbs* instr) { // Slow case: Call the runtime system to do the number allocation. __ bind(&slow); CallRuntimeFromDeferred( - Runtime::kAllocateHeapNumber, 0, instr, instr->context()); + Runtime::kHiddenAllocateHeapNumber, 0, instr, instr->context()); // Set the pointer to the new heap number in tmp. if (!tmp.is(rax)) __ movp(tmp, rax); // Restore input_reg after call to runtime. @@ -4548,11 +4548,11 @@ void LCodeGen::DoDeferredNumberTagU(LNumberTagU* instr) { // NumberTagU uses the context from the frame, rather than // the environment's HContext or HInlinedContext value. - // They only call Runtime::kAllocateHeapNumber. + // They only call Runtime::kHiddenAllocateHeapNumber. // The corresponding HChange instructions are added in a phase that does // not have easy access to the local context. __ movp(rsi, Operand(rbp, StandardFrameConstants::kContextOffset)); - __ CallRuntimeSaveDoubles(Runtime::kAllocateHeapNumber); + __ CallRuntimeSaveDoubles(Runtime::kHiddenAllocateHeapNumber); RecordSafepointWithRegisters( instr->pointer_map(), 0, Safepoint::kNoLazyDeopt); __ StoreToSafepointRegisterSlot(reg, rax); @@ -4604,11 +4604,11 @@ void LCodeGen::DoDeferredNumberTagD(LNumberTagD* instr) { PushSafepointRegistersScope scope(this); // NumberTagD uses the context from the frame, rather than // the environment's HContext or HInlinedContext value. - // They only call Runtime::kAllocateHeapNumber. + // They only call Runtime::kHiddenAllocateHeapNumber. // The corresponding HChange instructions are added in a phase that does // not have easy access to the local context. __ movp(rsi, Operand(rbp, StandardFrameConstants::kContextOffset)); - __ CallRuntimeSaveDoubles(Runtime::kAllocateHeapNumber); + __ CallRuntimeSaveDoubles(Runtime::kHiddenAllocateHeapNumber); RecordSafepointWithRegisters( instr->pointer_map(), 0, Safepoint::kNoLazyDeopt); __ movp(kScratchRegister, rax); @@ -5160,7 +5160,7 @@ void LCodeGen::DoDeferredAllocate(LAllocate* instr) { __ Push(Smi::FromInt(flags)); CallRuntimeFromDeferred( - Runtime::kAllocateInTargetSpace, 2, instr, instr->context()); + Runtime::kHiddenAllocateInTargetSpace, 2, instr, instr->context()); __ StoreToSafepointRegisterSlot(result, rax); } @@ -5192,7 +5192,7 @@ void LCodeGen::DoRegExpLiteral(LRegExpLiteral* instr) { __ Push(Smi::FromInt(instr->hydrogen()->literal_index())); __ Push(instr->hydrogen()->pattern()); __ Push(instr->hydrogen()->flags()); - CallRuntime(Runtime::kMaterializeRegExpLiteral, 4, instr); + CallRuntime(Runtime::kHiddenMaterializeRegExpLiteral, 4, instr); __ movp(rbx, rax); __ bind(&materialized); @@ -5204,7 +5204,7 @@ void LCodeGen::DoRegExpLiteral(LRegExpLiteral* instr) { __ bind(&runtime_allocate); __ Push(rbx); __ Push(Smi::FromInt(size)); - CallRuntime(Runtime::kAllocateInNewSpace, 1, instr); + CallRuntime(Runtime::kHiddenAllocateInNewSpace, 1, instr); __ Pop(rbx); __ bind(&allocated); @@ -5238,7 +5238,7 @@ void LCodeGen::DoFunctionLiteral(LFunctionLiteral* instr) { __ Push(instr->hydrogen()->shared_info()); __ PushRoot(pretenure ? Heap::kTrueValueRootIndex : Heap::kFalseValueRootIndex); - CallRuntime(Runtime::kNewClosure, 3, instr); + CallRuntime(Runtime::kHiddenNewClosure, 3, instr); } } @@ -5433,7 +5433,7 @@ void LCodeGen::DoDummyUse(LDummyUse* instr) { void LCodeGen::DoDeferredStackCheck(LStackCheck* instr) { PushSafepointRegistersScope scope(this); __ movp(rsi, Operand(rbp, StandardFrameConstants::kContextOffset)); - __ CallRuntimeSaveDoubles(Runtime::kStackGuard); + __ CallRuntimeSaveDoubles(Runtime::kHiddenStackGuard); RecordSafepointWithLazyDeopt(instr, RECORD_SAFEPOINT_WITH_REGISTERS, 0); ASSERT(instr->HasEnvironment()); LEnvironment* env = instr->environment(); diff --git a/src/x64/macro-assembler-x64.cc b/src/x64/macro-assembler-x64.cc index 7ea97d4..6f313f7 100644 --- a/src/x64/macro-assembler-x64.cc +++ b/src/x64/macro-assembler-x64.cc @@ -800,7 +800,7 @@ void MacroAssembler::CallApiFunctionAndReturn( bind(&promote_scheduled_exception); { FrameScope frame(this, StackFrame::INTERNAL); - CallRuntime(Runtime::kPromoteScheduledException, 0); + CallRuntime(Runtime::kHiddenPromoteScheduledException, 0); } jmp(&exception_handled); @@ -3307,9 +3307,9 @@ void MacroAssembler::Throw(BailoutReason reason) { // We don't actually want to generate a pile of code for this, so just // claim there is a stack frame, without generating one. FrameScope scope(this, StackFrame::NONE); - CallRuntime(Runtime::kThrowMessage, 1); + CallRuntime(Runtime::kHiddenThrowMessage, 1); } else { - CallRuntime(Runtime::kThrowMessage, 1); + CallRuntime(Runtime::kHiddenThrowMessage, 1); } // Control will not return here. int3(); diff --git a/test/mjsunit/fuzz-natives-part1.js b/test/mjsunit/fuzz-natives-part1.js index 63aca1b..0bd0dc1 100644 --- a/test/mjsunit/fuzz-natives-part1.js +++ b/test/mjsunit/fuzz-natives-part1.js @@ -116,7 +116,6 @@ function testArgumentTypes(name, argc) { var knownProblems = { "Abort": true, - "ThrowMessage": true, // Avoid calling the concat operation, because weird lengths // may lead to out-of-memory. Ditto for StringBuilderJoin. @@ -141,32 +140,8 @@ var knownProblems = { "DisableAccessChecks": true, "EnableAccessChecks": true, - // These functions should not be callable as runtime functions. - "NewFunctionContext": true, - "NewArgumentsFast": true, - "NewStrictArgumentsFast": true, - "PushWithContext": true, - "PushCatchContext": true, - "PushBlockContext": true, - "PushModuleContext": true, - "CompileUnoptimized": true, - "CompileOptimized": true, - "CompileOptimizedConcurrent": true, - "NotifyDeoptimized": true, - "NotifyStubFailure": true, - "NotifyOSR": true, - "CreateObjectLiteralBoilerplate": true, - "CloneLiteralBoilerplate": true, - "CloneShallowLiteralBoilerplate": true, - "CreateArrayLiteralBoilerplate": true, + // IS_VAR is special. "IS_VAR": true, - "ResolvePossiblyDirectEval": true, - "DeclareGlobals": true, - "ArrayConstructor": true, - "InternalArrayConstructor": true, - - "PromoteScheduledException": true, - "DeleteHandleScopeExtensions": true, // Vararg with minimum number > 0. "Call": true, diff --git a/test/mjsunit/fuzz-natives-part2.js b/test/mjsunit/fuzz-natives-part2.js index 35d843f..103e132 100644 --- a/test/mjsunit/fuzz-natives-part2.js +++ b/test/mjsunit/fuzz-natives-part2.js @@ -116,7 +116,6 @@ function testArgumentTypes(name, argc) { var knownProblems = { "Abort": true, - "ThrowMessage": true, // Avoid calling the concat operation, because weird lengths // may lead to out-of-memory. Ditto for StringBuilderJoin. @@ -141,33 +140,8 @@ var knownProblems = { "DisableAccessChecks": true, "EnableAccessChecks": true, - // These functions should not be callable as runtime functions. - "NewFunctionContext": true, - "NewArgumentsFast": true, - "NewStrictArgumentsFast": true, - "PushWithContext": true, - "PushCatchContext": true, - "PushBlockContext": true, - "PushModuleContext": true, - "CompileUnoptimized": true, - "CompileOptimized": true, - "CompileOptimizedConcurrent": true, - "NotifyDeoptimized": true, - "NotifyStubFailure": true, - "NotifyOSR": true, - "CreateObjectLiteralBoilerplate": true, - "CloneLiteralBoilerplate": true, - "CloneShallowLiteralBoilerplate": true, - "CreateArrayLiteralBoilerplate": true, + // IS_VAR is special. "IS_VAR": true, - "ResolvePossiblyDirectEval": true, - "DeclareGlobals": true, - "ArrayConstructor": true, - "InternalArrayConstructor": true, - "SetAccessorProperty": true, - - "PromoteScheduledException": true, - "DeleteHandleScopeExtensions": true, // Vararg with minimum number > 0. "Call": true, diff --git a/test/mjsunit/fuzz-natives-part3.js b/test/mjsunit/fuzz-natives-part3.js index c9ece59..7a8125a 100644 --- a/test/mjsunit/fuzz-natives-part3.js +++ b/test/mjsunit/fuzz-natives-part3.js @@ -116,7 +116,6 @@ function testArgumentTypes(name, argc) { var knownProblems = { "Abort": true, - "ThrowMessage": true, // Avoid calling the concat operation, because weird lengths // may lead to out-of-memory. Ditto for StringBuilderJoin. @@ -141,32 +140,8 @@ var knownProblems = { "DisableAccessChecks": true, "EnableAccessChecks": true, - // These functions should not be callable as runtime functions. - "NewFunctionContext": true, - "NewArgumentsFast": true, - "NewStrictArgumentsFast": true, - "PushWithContext": true, - "PushCatchContext": true, - "PushBlockContext": true, - "PushModuleContext": true, - "CompileUnoptimized": true, - "CompileOptimized": true, - "CompileOptimizedConcurrent": true, - "NotifyDeoptimized": true, - "NotifyStubFailure": true, - "NotifyOSR": true, - "CreateObjectLiteralBoilerplate": true, - "CloneLiteralBoilerplate": true, - "CloneShallowLiteralBoilerplate": true, - "CreateArrayLiteralBoilerplate": true, + // IS_VAR is special. "IS_VAR": true, - "ResolvePossiblyDirectEval": true, - "DeclareGlobals": true, - "ArrayConstructor": true, - "InternalArrayConstructor": true, - - "PromoteScheduledException": true, - "DeleteHandleScopeExtensions": true, // Vararg with minimum number > 0. "Call": true, @@ -212,7 +187,7 @@ var knownProblems = { "_GeneratorThrow": true, // Only applicable to DataViews. - "_DataViewInitialize":true, + "_DataViewInitialize": true, }; var currentlyUncallable = { diff --git a/test/mjsunit/fuzz-natives-part4.js b/test/mjsunit/fuzz-natives-part4.js index 97d08bd..9523749 100644 --- a/test/mjsunit/fuzz-natives-part4.js +++ b/test/mjsunit/fuzz-natives-part4.js @@ -116,7 +116,6 @@ function testArgumentTypes(name, argc) { var knownProblems = { "Abort": true, - "ThrowMessage": true, // Avoid calling the concat operation, because weird lengths // may lead to out-of-memory. Ditto for StringBuilderJoin. @@ -141,32 +140,8 @@ var knownProblems = { "DisableAccessChecks": true, "EnableAccessChecks": true, - // These functions should not be callable as runtime functions. - "NewFunctionContext": true, - "NewArgumentsFast": true, - "NewStrictArgumentsFast": true, - "PushWithContext": true, - "PushCatchContext": true, - "PushBlockContext": true, - "PushModuleContext": true, - "CompileUnoptimized": true, - "CompileOptimized": true, - "CompileOptimizedConcurrent": true, - "NotifyDeoptimized": true, - "NotifyStubFailure": true, - "NotifyOSR": true, - "CreateObjectLiteralBoilerplate": true, - "CloneLiteralBoilerplate": true, - "CloneShallowLiteralBoilerplate": true, - "CreateArrayLiteralBoilerplate": true, + // IS_VAR is special. "IS_VAR": true, - "ResolvePossiblyDirectEval": true, - "DeclareGlobals": true, - "ArrayConstructor": true, - "InternalArrayConstructor": true, - - "PromoteScheduledException": true, - "DeleteHandleScopeExtensions": true, // Vararg with minimum number > 0. "Call": true, -- 2.7.4