@@ -2016,7 +2016,7 @@ Inline::InlineBuiltInFunction(IR::Instr *callInstr, const FunctionJITTimeInfo *
2016
2016
*pIsInlined = false ;
2017
2017
2018
2018
// Inlining is profile-based, so get the built-in function from profile rather than from the callInstr's opnd.
2019
- Js::BuiltinFunction builtInId = Js::JavascriptLibrary::GetBuiltInForFuncInfo (inlineeData->GetFunctionInfoAddr (), this -> topFunc -> GetThreadContextInfo ());
2019
+ Js::BuiltinFunction builtInId = Js::JavascriptLibrary::GetBuiltInForFuncInfo (inlineeData->GetLocalFunctionId ());
2020
2020
2021
2021
#if defined(DBG_DUMP) || defined(ENABLE_DEBUG_CONFIG_OPTIONS)
2022
2022
char16 debugStringBuffer[MAX_FUNCTION_BODY_DEBUG_STRING_SIZE];
@@ -2193,7 +2193,7 @@ Inline::InlineBuiltInFunction(IR::Instr *callInstr, const FunctionJITTimeInfo *
2193
2193
argoutInstr->SetByteCodeOffset (callInstr);
2194
2194
callInstr->GetInsertBeforeByteCodeUsesInstr ()->InsertBefore (argoutInstr);
2195
2195
2196
- Js::BuiltinFunction builtInFunctionId = Js::JavascriptLibrary::GetBuiltInForFuncInfo (inlineeData->GetFunctionInfoAddr (), this -> topFunc -> GetThreadContextInfo ());
2196
+ Js::BuiltinFunction builtInFunctionId = Js::JavascriptLibrary::GetBuiltInForFuncInfo (inlineeData->GetLocalFunctionId ());
2197
2197
2198
2198
2199
2199
callInstr->m_opcode = inlineCallOpCode;
@@ -2420,7 +2420,7 @@ IR::Instr* Inline::InlineApply(IR::Instr *callInstr, const FunctionJITTimeInfo *
2420
2420
return callInstr;
2421
2421
}
2422
2422
2423
- Js::BuiltinFunction builtInId = Js::JavascriptLibrary::GetBuiltInForFuncInfo (applyData->GetFunctionInfoAddr (), this -> topFunc -> GetThreadContextInfo ());
2423
+ Js::BuiltinFunction builtInId = Js::JavascriptLibrary::GetBuiltInForFuncInfo (applyData->GetLocalFunctionId ());
2424
2424
const FunctionJITTimeInfo * inlineeData = nullptr ;
2425
2425
2426
2426
IR::Instr* arrayArgInstr = nullptr ;
@@ -2657,7 +2657,7 @@ IR::Instr * Inline::InlineApplyBuiltInTargetWithArray(IR::Instr * callInstr, con
2657
2657
argOut = IR::Instr::New (Js::OpCode::ArgOut_A_InlineSpecialized, linkOpnd, implicitThisArgOut->GetSrc1 (), argOut->GetDst (), callInstr->m_func );
2658
2658
callInstr->InsertBefore (argOut);
2659
2659
2660
- Js::BuiltinFunction builtInId = Js::JavascriptLibrary::GetBuiltInForFuncInfo (builtInInfo->GetFunctionInfoAddr (), this -> topFunc -> GetThreadContextInfo ());
2660
+ Js::BuiltinFunction builtInId = Js::JavascriptLibrary::GetBuiltInForFuncInfo (builtInInfo->GetLocalFunctionId ());
2661
2661
IR::HelperCallOpnd * helperCallOpnd = nullptr ;
2662
2662
switch (builtInId)
2663
2663
{
@@ -3022,7 +3022,7 @@ IR::Instr*
3022
3022
Inline::InlineCall (IR::Instr *callInstr, const FunctionJITTimeInfo *funcInfo, const FunctionJITTimeInfo * inlinerData, const StackSym *symCallerThis, bool * pIsInlined, uint callSiteId, uint recursiveInlineDepth)
3023
3023
{
3024
3024
Func *func = callInstr->m_func ;
3025
- Js::BuiltinFunction builtInId = Js::JavascriptLibrary::GetBuiltInForFuncInfo (funcInfo->GetFunctionInfoAddr (), func-> GetThreadContextInfo ());
3025
+ Js::BuiltinFunction builtInId = Js::JavascriptLibrary::GetBuiltInForFuncInfo (funcInfo->GetLocalFunctionId ());
3026
3026
3027
3027
*pIsInlined = false ;
3028
3028
if (PHASE_OFF (Js::InlineCallPhase, this ->topFunc ) || PHASE_OFF (Js::InlineCallPhase, func)
@@ -3273,7 +3273,7 @@ Inline::TryGetFixedMethodsForBuiltInAndTarget(IR::Instr *callInstr, const Functi
3273
3273
char16 debugStringBuffer3[MAX_FUNCTION_BODY_DEBUG_STRING_SIZE];
3274
3274
#endif
3275
3275
3276
- Assert (isApplyTarget || Js::JavascriptLibrary::GetBuiltInForFuncInfo (builtInFuncInfo->GetFunctionInfoAddr (), this -> topFunc -> GetThreadContextInfo ()));
3276
+ Assert (isApplyTarget || Js::JavascriptLibrary::GetBuiltInForFuncInfo (builtInFuncInfo->GetLocalFunctionId ()));
3277
3277
3278
3278
Js::OpCode originalCallOpCode = callInstr->m_opcode ;
3279
3279
StackSym* originalCallTargetStackSym = callInstr->GetSrc1 ()->GetStackSym ();
@@ -4363,7 +4363,7 @@ Inline::InsertFunctionInfoCheck(IR::Instr *callInstr, IR::Instr *insertBeforeIns
4363
4363
void
4364
4364
Inline::InsertFunctionObjectCheck (IR::Instr *callInstr, IR::Instr *insertBeforeInstr, IR::Instr *bailOutInstr, const FunctionJITTimeInfo *funcInfo)
4365
4365
{
4366
- Js::BuiltinFunction index = Js::JavascriptLibrary::GetBuiltInForFuncInfo (funcInfo->GetFunctionInfoAddr (), this -> topFunc -> GetThreadContextInfo ());
4366
+ Js::BuiltinFunction index = Js::JavascriptLibrary::GetBuiltInForFuncInfo (funcInfo->GetLocalFunctionId ());
4367
4367
AssertMsg (index < Js::BuiltinFunction::Count, " Invalid built-in index on a call target marked as built-in" );
4368
4368
4369
4369
bailOutInstr->SetSrc1 (callInstr->GetSrc1 ()->AsRegOpnd ());
@@ -5627,7 +5627,7 @@ Inline::GetInlineeHasArgumentObject(Func * inlinee)
5627
5627
{
5628
5628
Assert (builtInOpnd->AsAddrOpnd ()->m_isFunction );
5629
5629
5630
- Js::BuiltinFunction builtinFunction = Js::JavascriptLibrary::GetBuiltInForFuncInfo (((FixedFieldInfo*)builtInOpnd->AsAddrOpnd ()->m_metadata )->GetFuncInfoAddr (), this -> topFunc -> GetThreadContextInfo ());
5630
+ Js::BuiltinFunction builtinFunction = Js::JavascriptLibrary::GetBuiltInForFuncInfo (((FixedFieldInfo*)builtInOpnd->AsAddrOpnd ()->m_metadata )->GetLocalFuncId ());
5631
5631
if (builtinFunction == Js::BuiltinFunction::JavascriptFunction_Apply)
5632
5632
{
5633
5633
this ->SetIsInInlinedApplyCall (true );
0 commit comments