Home
last modified time | relevance | path

Searched refs:methodOffset (Results 1 – 25 of 28) sorted by relevance

12

/arkcompiler/ets_runtime/ecmascript/compiler/type_inference/
Dglobal_type_infer.h24 GlobalTypeInfer(PassContext *ctx, const uint32_t methodOffset, const CString &recordName,
33 inline MethodTypeInfer *GetTypeInfer(const uint32_t methodOffset) const in GetTypeInfer() argument
35 auto it = typeInfers_.find(methodOffset); in GetTypeInfer()
42 inline bool IsLegalMethod(const uint32_t methodOffset) const in IsLegalMethod() argument
44 return (methodOffset != 0); in IsLegalMethod()
47 void NewTypeInfer(const uint32_t methodOffset);
48 void CollectNamespaceMethod(const uint32_t methodOffset);
49 void CollectNamespaceMethods(const uint32_t methodOffset);
Dglobal_type_infer.cpp19 GlobalTypeInfer::GlobalTypeInfer(PassContext *ctx, const uint32_t methodOffset, const CString &reco… in GlobalTypeInfer() argument
21 …jsPandaFile_(ctx_->GetJSPandaFile()), bcInfo_(ctx->GetBytecodeInfo()), methodOffset_(methodOffset), in GlobalTypeInfer()
25 CollectNamespaceMethods(methodOffset); in GlobalTypeInfer()
55 void GlobalTypeInfer::NewTypeInfer(const uint32_t methodOffset) in NewTypeInfer() argument
59 MethodInfo &methodInfo = methodList.at(methodOffset); in NewTypeInfer()
62 auto methodLiteral = jsPandaFile_->FindMethodLiteral(methodOffset); in NewTypeInfer()
81 typeInfers_.insert(std::make_pair(methodOffset, typeInfer)); in NewTypeInfer()
84 void GlobalTypeInfer::CollectNamespaceMethod(const uint32_t methodOffset) in CollectNamespaceMethod() argument
87 MethodInfo &methodInfo = methodList.at(methodOffset); in CollectNamespaceMethod()
99 void GlobalTypeInfer::CollectNamespaceMethods(const uint32_t methodOffset) in CollectNamespaceMethods() argument
[all …]
Dmethod_type_infer.cpp33 uint32_t methodOffset = methodLiteral_->GetMethodId().GetOffset(); in MethodTypeInfer() local
34 if (tsManager_->HasInferredNamespaceType(methodOffset)) { in MethodTypeInfer()
35 SetNamespaceArgType(tsManager_->GetNamespaceObjType(methodOffset)); in MethodTypeInfer()
/arkcompiler/ets_runtime/ecmascript/compiler/
Dbytecode_info_collector.h425 void AddIndexToCPItem(ItemType type, uint32_t index, uint32_t methodOffset, uint32_t bcIndex);
467 bool IsSkippedMethod(uint32_t methodOffset) const in IsSkippedMethod() argument
469 if (skippedMethods_.find(methodOffset) == skippedMethods_.end()) { in IsSkippedMethod()
475 void AddSkippedMethod(uint32_t methodOffset) in AddSkippedMethod() argument
477 skippedMethods_.insert(methodOffset); in AddSkippedMethod()
480 void EraseSkippedMethod(uint32_t methodOffset) in EraseSkippedMethod() argument
482 if (skippedMethods_.find(methodOffset) != skippedMethods_.end()) { in EraseSkippedMethod()
483 skippedMethods_.erase(methodOffset); in EraseSkippedMethod()
499 void AddMethodOffsetToRecordName(uint32_t methodOffset, CString recordName) in AddMethodOffsetToRecordName() argument
501 methodOffsetToRecordName_.emplace(methodOffset, recordName); in AddMethodOffsetToRecordName()
[all …]
Dcompilation_driver.h84 uint32_t methodOffset, in CompileMethod() argument
89 cb(bytecodeInfo_.GetRecordName(index), methodName, methodLiteral, methodOffset, in CompileMethod()
179 void AddDependList(const CString &recordName, uint32_t methodOffset, in AddDependList() argument
189 auto &methodInfo = methodList.at(methodOffset); in AddDependList()
202 bool VerifyAndMarkCurMethod(uint32_t methodOffset, std::unordered_set<EntityId> &newMethodSet) in VerifyAndMarkCurMethod() argument
205 if (methodOffset == MethodInfo::DEFAULT_OUTMETHOD_OFFSET) { in VerifyAndMarkCurMethod()
210 auto iter = methodList.find(methodOffset); in VerifyAndMarkCurMethod()
221 panda_file::File::EntityId methodId(methodOffset); in VerifyAndMarkCurMethod()
267 uint32_t methodOffset = methodId.GetOffset(); in SearchForCompilation() local
269 AddDependList(recordName, methodOffset, importList); in SearchForCompilation()
[all …]
Dpgo_bc_info.h36 uint32_t methodOffset; member
49 void IterateValByMethodOffset(uint32_t methodOffset, Type type, const Callback &cb) const in IterateValByMethodOffset() argument
51 if (methodOffsetToValVec_.find(methodOffset) != methodOffsetToValVec_.end()) { in IterateValByMethodOffset()
52 const ValVec &valVec = methodOffsetToValVec_.at(methodOffset); in IterateValByMethodOffset()
80 void IterateInfoAndType(uint32_t methodOffset, const Callback &cb) const in IterateInfoAndType() argument
84 infos_[idx].IterateValByMethodOffset(methodOffset, type, cb); in IterateInfoAndType()
Dpgo_bc_info.cpp21 auto it = methodOffsetToValVec_.find(detail.methodOffset); in Record()
23 methodOffsetToValVec_[detail.methodOffset] = in Record()
66 uint32_t methodOffset = method->GetMethodId().GetOffset(); in Record() local
70 … Record(InfoDetail {recordName, methodOffset, bcIndex, bcOffset, cpIndex}, Type::OBJ_LITERAL); in Record()
73 … Record(InfoDetail {recordName, methodOffset, bcIndex, bcOffset, cpIndex}, Type::ARRAY_LITERAL); in Record()
75 Record(InfoDetail {recordName, methodOffset, bcIndex, bcOffset, 0}, Type::CALL_TARGET); in Record()
Dbytecode_info_collector.cpp95 auto methodOffset = methodId.GetOffset(); in ProcessClasses() local
98 jsPandaFile_->UpdateMainMethodIndex(methodOffset, recordName); in ProcessClasses()
117 auto it = processedMethod.find(methodOffset); in ProcessClasses()
121 recordName, methodOffset, classConstructIndexes); in ProcessClasses()
122 … processedMethod[methodOffset] = std::make_pair(methodPcInfos.size() - 1, methodOffset); in ProcessClasses()
129 SetMethodPcInfoIndex(methodOffset, processedMethod[methodOffset]); in ProcessClasses()
235 uint32_t methodOffset, std::vector<panda_file::File::EntityId> &classConstructIndexes) in CollectMethodPcsFromBC() argument
266 bytecodeInfo_.SetMethodOffsetToFastCallInfo(methodOffset, canFastCall, noGC); in CollectMethodPcsFromBC()
271 void BytecodeInfoCollector::SetMethodPcInfoIndex(uint32_t methodOffset, in SetMethodPcInfoIndex() argument
291 auto iter = methodList.find(methodOffset); in SetMethodPcInfoIndex()
[all …]
Dtype_recorder.cpp47 uint32_t methodOffset = fieldId.GetOffset(); in LoadTypes() local
48 TypeAnnotationExtractor annoExtractor(jsPandaFile, methodOffset); in LoadTypes()
52 &thisGT, tsManager, methodOffset](const int32_t bcIdx, const uint32_t typeId) { in LoadTypes()
57 TypeLocation loc(jsPandaFile, methodOffset, bcIdx); in LoadTypes()
72 auto methodIter = methodList.find(methodOffset); in LoadTypes()
152 uint32_t methodOffset = methodLiteral->GetMethodId().GetOffset(); in CreateTypesForPGO() local
154 …bcInfo->IterateInfoAndType(methodOffset, [this, &typeParser, methodOffset, &recordName, &jsPandaFi… in CreateTypesForPGO()
178 TypeLocation loc(jsPandaFile, methodOffset, bcIdx); in CreateTypesForPGO()
184 … jsPandaFile, recordName, methodOffset, cpIdx, it->second, type, decoder_, enableOptTrackField_ }); in CreateTypesForPGO()
Dpass_manager.cpp74 uint32_t methodOffset, in Compile()
84 tsManager->SetCurConstantPool(jsPandaFile, methodOffset); in Compile()
109 TimeScope timeScope("BytecodeToCircuit", methodName, methodOffset, log_); in Compile()
114 … methodLiteral, methodOffset, vm_->GetNativeAreaAllocator(), decoder, passOptions_); in Compile()
Dts_inline_lowering.cpp88 auto methodOffset = tsManager_->GetFuncMethodOffset(gt); in TryInline() local
89 if (methodOffset == 0 || ctx_->IsSkippedMethod(methodOffset)) { in TryInline()
92 if (IsRecursiveFunc(info, methodOffset)) { in TryInline()
95 inlinedMethod = ctx_->GetJSPandaFile()->FindMethodLiteral(methodOffset); in TryInline()
100 auto &methodInfo = bytecodeInfo.GetMethodList().at(methodOffset); in TryInline()
112 AnalyseFastAccessor(info, methodPcInfo.pcOffsets, methodOffset); in TryInline()
481 auto methodOffset = tsManager_->GetFuncMethodOffset(funcGt); in InlineFuncCheck() local
483 … MachineType::I1, {callState, callDepend, inlineFunc, builder_.IntPtr(methodOffset), frameState}, in InlineFuncCheck()
Dpass_manager.h89 bool IsSkippedMethod(uint32_t methodOffset) const in IsSkippedMethod() argument
91 return bcInfoCollector_->IsSkippedMethod(methodOffset); in IsSkippedMethod()
Dts_inline_lowering.h112 … NativeAreaAllocator* nativeAreaAllocator, PassOptions *options, uint32_t methodOffset) in TSInlineLowering() argument
129 initMethodOffset_(methodOffset) {} in TSInlineLowering()
Dcompiler_log.cpp88 TimeScope::TimeScope(std::string name, std::string methodName, uint32_t methodOffset, CompilerLog* … in TimeScope() argument
89 … name_(std::move(name)), methodName_(std::move(methodName)), methodOffset_(methodOffset), log_(log) in TimeScope()
Dcompiler_log.h180 TimeScope(std::string name, std::string methodName, uint32_t methodOffset, CompilerLog* log);
Dpass.h54 uint32_t methodOffset = 0, NativeAreaAllocator *allocator = nullptr,
58 … methodOffset_(methodOffset), allocator_(allocator), decoder_(decoder), passOptions_(passOptions) in builder_()
Dts_hcr_lowering.cpp1309 auto methodOffset = tsManager_->GetFuncMethodOffset(funcGt); in CheckFastCallThisCallTarget() local
1311 func, builder_.IntPtr(methodOffset), gate); in CheckFastCallThisCallTarget()
1325 auto methodOffset = tsManager_->GetFuncMethodOffset(funcGt); in CheckCallThisCallTarget() local
1327 func, builder_.IntPtr(methodOffset), gate); in CheckCallThisCallTarget()
/arkcompiler/ets_runtime/ecmascript/jspandafile/
Dtype_literal_extractor.cpp36 static uint32_t GetMethodAnnoOffset(const JSPandaFile *jsPandaFile, uint32_t methodOffset, const ch… in GetMethodAnnoOffset() argument
39 EntityId methodId(methodOffset); in GetMethodAnnoOffset()
231 …tionExtractor::TypeAnnotationExtractor(const JSPandaFile *jsPandaFile, const uint32_t methodOffset) in TypeAnnotationExtractor() argument
233 ProcessTypeAnnotation(jsPandaFile, methodOffset); in TypeAnnotationExtractor()
237 …tationExtractor::ProcessTypeAnnotation(const JSPandaFile *jsPandaFile, const uint32_t methodOffset) in ProcessTypeAnnotation() argument
239 uint32_t annoOffset = GetMethodAnnoOffset(jsPandaFile, methodOffset, TYPE_ANNO_ELEMENT_NAME); in ProcessTypeAnnotation()
336 uint32_t methodOffset = jsPandaFile->GetMainMethodIndex(recordName); in ProcessExportTable() local
337 uint32_t annoOffset = GetMethodAnnoOffset(jsPandaFile, methodOffset, name); in ProcessExportTable()
Dtype_literal_extractor.h169 explicit TypeAnnotationExtractor(const JSPandaFile *jsPandaFile, const uint32_t methodOffset);
202 void ProcessTypeAnnotation(const JSPandaFile *jsPandaFile, const uint32_t methodOffset);
Dpanda_file_translator.cpp61 auto methodOffset = methodId.GetOffset(); in TranslateClasses() local
64 jsPandaFile->UpdateMainMethodIndex(methodOffset); in TranslateClasses()
69 jsPandaFile->UpdateMainMethodIndex(methodOffset, recordName); in TranslateClasses()
/arkcompiler/ets_runtime/ecmascript/ts_types/
Dglobal_type_info.h79 explicit TypeLocation(const JSPandaFile *jsPandaFile, uint32_t methodOffset, in TypeLocation() argument
81 : jsPandaFile_(jsPandaFile), methodOffset_(methodOffset), bcIdx_(bcIdx) {} in TypeLocation()
Dts_manager.cpp569 uint32_t methodOffset = functionType->GetMethodOffset(); in GetMethodIndex() local
571 return constantPool->GetMethodIndexByEntityId(panda_file::File::EntityId(methodOffset)); in GetMethodIndex()
1203 void TSManager::SetCurConstantPool(const JSPandaFile *jsPandaFile, uint32_t methodOffset) in SetCurConstantPool() argument
1205 curCPID_ = GetConstantPoolIDByMethodOffset(jsPandaFile, methodOffset); in SetCurConstantPool()
1209 …t TSManager::GetConstantPoolIDByMethodOffset(const JSPandaFile *jsPandaFile, uint32_t methodOffset) in GetConstantPoolIDByMethodOffset() argument
1212 panda_file::File::EntityId(methodOffset)); in GetConstantPoolIDByMethodOffset()
1302 uint32_t methodOffset = oldCP->GetEntityId(data.index).GetOffset(); in FillSnapshotConstantPoolList() local
1306 if (!bcInfoCollector->IsSkippedMethod(methodOffset)) { in FillSnapshotConstantPoolList()
1309 newCP->SetObjectToCache(thread_, data.index, JSTaggedValue(methodOffset)); in FillSnapshotConstantPoolList()
1415 … auto methodOffset = JSHandle<JSFunction>(valueHandle)->GetCallTarget()->GetMethodId().GetOffset(); in CollectLiteralInfo() local
[all …]
Dts_manager.h291 void PUBLIC_API SetFuncMethodOffset(GlobalTSTypeRef gt, uint32_t methodOffset);
397 inline void StoreNamespaceType(const uint32_t methodOffset, const kungfu::GateType type) in StoreNamespaceType() argument
399 methodOffsetToType_.insert(std::make_pair(methodOffset, type)); in StoreNamespaceType()
402 inline kungfu::GateType GetNamespaceObjType(const uint32_t methodOffset) const in GetNamespaceObjType() argument
404 ASSERT(HasInferredNamespaceType(methodOffset)); in GetNamespaceObjType()
405 return methodOffsetToType_.at(methodOffset); in GetNamespaceObjType()
408 inline bool HasInferredNamespaceType(const uint32_t methodOffset) const in HasInferredNamespaceType() argument
410 return methodOffsetToType_.find(methodOffset) != methodOffsetToType_.end(); in HasInferredNamespaceType()
565 void PUBLIC_API SetCurConstantPool(const JSPandaFile *jsPandaFile, uint32_t methodOffset);
567 … PUBLIC_API GetConstantPoolIDByMethodOffset(const JSPandaFile *jsPandaFile, uint32_t methodOffset);
Dts_type_parser.cpp514 uint32_t methodOffset = bcInfo_->IterateFunctionTypeIDAndMethodOffset(typeOffset); in StoreMethodOffset() local
515 if (methodOffset != 0) { in StoreMethodOffset()
516 functionType->SetMethodOffset(methodOffset); in StoreMethodOffset()
519 … kungfu::FastCallInfo info = bcInfo_->IterateMethodOffsetToFastCallInfo(methodOffset, &isVaild); in StoreMethodOffset()
Dts_type_parser.h39 uint32_t methodOffset; member

12