/arkcompiler/ets_runtime/ecmascript/mem/ |
H A D | tagged_object-inl.h | 28 inline void TaggedObject::SetClassWithoutBarrier(JSHClass *hclass) in SetClassWithoutBarrier() argument 30 class_ = reinterpret_cast<MarkWordType>(hclass); in SetClassWithoutBarrier() 33 inline void TaggedObject::SetClass(const JSThread *thread, JSHClass *hclass) in SetClass() argument 35 Barriers::SetObject<true>(thread, this, 0, JSTaggedValue(hclass).GetRawData()); in SetClass() 38 inline void TaggedObject::SetClass(const JSThread *thread, JSHandle<JSHClass> hclass) in SetClass() argument 40 SetClass(thread, *hclass); in SetClass() 43 inline void TaggedObject::SynchronizedSetClass(const JSThread *thread, JSHClass *hclass) in SynchronizedSetClass() argument 45 Barriers::SynchronizedSetClass(thread, this, JSTaggedValue(hclass).GetRawData()); in SynchronizedSetClass()
|
H A D | tagged_object.h | 35 void SynchronizedSetClass(const JSThread *thread, JSHClass *hclass); 37 void SetClassWithoutBarrier(JSHClass *hclass); 54 void SetClass(const JSThread *thread, JSHClass *hclass); 55 void SetClass(const JSThread *thread, JSHandle<JSHClass> hclass);
|
H A D | heap-inl.h | 204 TaggedObject *Heap::AllocateYoungOrHugeObject(JSHClass *hclass) in AllocateYoungOrHugeObject() argument 206 size_t size = hclass->GetObjectSize(); in AllocateYoungOrHugeObject() 207 return AllocateYoungOrHugeObject(hclass, size); in AllocateYoungOrHugeObject() 244 TaggedObject *Heap::AllocateYoungOrHugeObject(JSHClass *hclass, size_t size) in AllocateYoungOrHugeObject() argument 248 object->SetClass(thread_, hclass); in AllocateYoungOrHugeObject() 255 void BaseHeap::SetHClassAndDoAllocateEvent(JSThread *thread, TaggedObject *object, JSHClass *hclass, in SetHClassAndDoAllocateEvent() argument 259 object->SetClass(thread, hclass); in SetHClassAndDoAllocateEvent() 294 TaggedObject *Heap::TryAllocateYoungGeneration(JSHClass *hclass, size_t size) in TryAllocateYoungGeneration() argument 302 object->SetClass(thread_, hclass); in TryAllocateYoungGeneration() 310 TaggedObject *Heap::AllocateOldOrHugeObject(JSHClass *hclass) in AllocateOldOrHugeObject() argument 329 AllocateOldOrHugeObject(JSHClass *hclass, size_t size) AllocateOldOrHugeObject() argument 339 AllocateReadOnlyOrHugeObject(JSHClass *hclass) AllocateReadOnlyOrHugeObject() argument 349 AllocateReadOnlyOrHugeObject(JSHClass *hclass, size_t size) AllocateReadOnlyOrHugeObject() argument 366 AllocateNonMovableOrHugeObject(JSHClass *hclass) AllocateNonMovableOrHugeObject() argument 379 AllocateNonMovableOrHugeObject(JSHClass *hclass, size_t size) AllocateNonMovableOrHugeObject() argument 396 AllocateClassClass(JSHClass *hclass, size_t size) AllocateClassClass() argument 411 AllocateClassClass(JSThread *thread, JSHClass *hclass, size_t size) AllocateClassClass() argument 452 AllocateHugeObject(JSHClass *hclass, size_t size) AllocateHugeObject() argument 477 AllocateMachineCodeObject(JSHClass *hclass, size_t size, MachineCodeDesc *desc) AllocateMachineCodeObject() argument 787 AllocateNonMovableOrHugeObject(JSThread *thread, JSHClass *hclass) AllocateNonMovableOrHugeObject() argument 793 AllocateNonMovableOrHugeObject(JSThread *thread, JSHClass *hclass, size_t size) AllocateNonMovableOrHugeObject() argument 836 AllocateOldOrHugeObject(JSThread *thread, JSHClass *hclass) AllocateOldOrHugeObject() argument 842 AllocateOldOrHugeObject(JSThread *thread, JSHClass *hclass, size_t size) AllocateOldOrHugeObject() argument 905 AllocateHugeObject(JSThread *thread, JSHClass *hclass, size_t size) AllocateHugeObject() argument 939 AllocateReadOnlyOrHugeObject(JSThread *thread, JSHClass *hclass) AllocateReadOnlyOrHugeObject() argument 945 AllocateReadOnlyOrHugeObject(JSThread *thread, JSHClass *hclass, size_t size) AllocateReadOnlyOrHugeObject() argument [all...] |
H A D | layout_visitor.h | 30 auto hclass = root->SynchronizedGetClass(); in IterateBody() local 31 auto objSize = hclass->GetObjectSize(); in IterateBody() 33 if (hclass->IsAllTaggedProp()) { in IterateBody()
|
/arkcompiler/ets_runtime/ecmascript/jit/ |
H A D | jit_profiler.cpp | 361 JSHClass* hclass = nullptr; in ConvertNewObjRange() local 364 // JIT cannot optimize this scenario because it doesn't know the hclass in ConvertNewObjRange() 374 hclass = JSHClass::Cast(protoOrHClass.GetTaggedObject()); in ConvertNewObjRange() 382 ptManager_->RecordAndGetHclassIndexForJIT(hclass); in ConvertNewObjRange() 384 PGODefineOpType* type = chunk_->New<PGODefineOpType>(pt, hclass); in ConvertNewObjRange() 425 auto hclass = JSHClass::Cast(trackInfo->GetCachedHClass().GetTaggedObject()); in ConvertCreateObject() local 426 PGODefineOpType* objDefType = chunk_->New<PGODefineOpType>(ProfileType::CreateJITType(), hclass); in ConvertCreateObject() 427 ptManager_->RecordAndGetHclassIndexForJIT(hclass); in ConvertCreateObject() 451 JSHClass *hclass = JSHClass::Cast(object); in ConvertICByName() local 452 ConvertICByNameWithHandler(abcId_, bcOffset, hclass, secondValu in ConvertICByName() 459 ConvertICByNameWithHandler(ApEntityId abcId, int32_t bcOffset, JSHClass *hclass, JSTaggedValue secondValue, BCType type, uint32_t slotId) ConvertICByNameWithHandler() argument 471 HandleLoadType(ApEntityId &abcId, int32_t &bcOffset, JSHClass *hclass, JSTaggedValue &secondValue, uint32_t slotId) HandleLoadType() argument 481 HandleLoadTypeInt(ApEntityId &abcId, int32_t &bcOffset, JSHClass *hclass, JSTaggedValue &secondValue) HandleLoadTypeInt() argument 496 HandleLoadTypePrototypeHandler(ApEntityId &abcId, int32_t &bcOffset, JSHClass *hclass, JSTaggedValue &secondValue, uint32_t slotId) HandleLoadTypePrototypeHandler() argument 534 HandleOtherTypes(ApEntityId &abcId, int32_t &bcOffset, JSHClass *hclass, JSTaggedValue &secondValue, uint32_t slotId) HandleOtherTypes() argument 552 HandleTransitionHandler(ApEntityId &abcId, int32_t &bcOffset, JSHClass *hclass, JSTaggedValue &secondValue) HandleTransitionHandler() argument 563 HandleTransWithProtoHandler(ApEntityId &abcId, int32_t &bcOffset, JSHClass *hclass, JSTaggedValue &secondValue) HandleTransWithProtoHandler() argument 580 HandleOtherTypesPrototypeHandler(ApEntityId &abcId, int32_t &bcOffset, JSHClass *hclass, JSTaggedValue &secondValue, uint32_t slotId) HandleOtherTypesPrototypeHandler() argument 607 HandleStoreTSHandler(ApEntityId &abcId, int32_t &bcOffset, JSHClass *hclass, JSTaggedValue &secondValue) HandleStoreTSHandler() argument 641 JSHClass *hclass = JSHClass::Cast(object); ConvertICByNameWithPoly() local 661 JSHClass *hclass = JSHClass::Cast(object); ConvertICByValue() local 674 ConvertICByValueWithHandler(ApEntityId abcId, int32_t bcOffset, JSHClass *hclass, JSTaggedValue secondValue, BCType type) ConvertICByValueWithHandler() argument 700 HandleStoreType(ApEntityId &abcId, int32_t &bcOffset, JSHClass *hclass, JSTaggedValue &secondValue) HandleStoreType() argument 726 HandleTransition(ApEntityId &abcId, int32_t &bcOffset, JSHClass *hclass, JSTaggedValue &secondValue) HandleTransition() argument 746 HandleTransWithProto(ApEntityId &abcId, int32_t &bcOffset, JSHClass *hclass, JSTaggedValue &secondValue) HandleTransWithProto() argument 765 HandlePrototypeHandler(ApEntityId &abcId, int32_t &bcOffset, JSHClass *hclass, JSTaggedValue &secondValue) HandlePrototypeHandler() argument 810 JSHClass *hclass = JSHClass::Cast(object); ConvertICByValueWithPoly() local 828 JSHClass *hclass = JSHClass::Cast(object); ConvertInstanceof() local [all...] |
H A D | jit_profiler.h | 98 void ConvertICByNameWithHandler(ApEntityId abcId, int32_t bcOffset, JSHClass *hclass, 101 JSHClass *hclass, JSTaggedValue &secondValue, uint32_t slotId); 103 JSHClass *hclass, JSTaggedValue &secondValue); 105 JSHClass *hclass, JSTaggedValue &secondValue, uint32_t slotId); 107 JSHClass *hclass, JSTaggedValue &secondValue, uint32_t slotId); 109 JSHClass *hclass, JSTaggedValue &secondValue); 111 JSHClass *hclass, JSTaggedValue &secondValue); 113 JSHClass *hclass, JSTaggedValue &secondValue, uint32_t slotId); 115 JSHClass *hclass, JSTaggedValue &secondValue); 119 void ConvertICByValueWithHandler(ApEntityId abcId, int32_t bcOffset, JSHClass *hclass, [all...] |
/arkcompiler/ets_runtime/ecmascript/ |
H A D | js_hclass.cpp | 287 // The transition hclass from AOT, which does not have a prototype, needs to be reset here. in AddProperty() 295 // The transition hclass from AOT, which does not have protochangemarker, needs to be reset here in AddProperty() 314 // update hclass in object. in AddProperty() 333 // 2. new a hclass in TransitionExtension() 344 // 3. Add newClass to old hclass's parent's transitions. in TransitionExtension() 367 // 2. new a hclass in TransitionProto() 420 // use transPhc to replace the hclass of proto in ReBuildFunctionInheritanceRelationship() 439 // 1. new a hclass in CloneWithAddProto() 466 // Because the heap-space of hclass is non-movable, this function can be non-static. in SetPrototype() 472 const JSHandle<JSHClass> &hclass, in SetPrototypeWithNotification() 471 SetPrototypeWithNotification(const JSThread *thread, const JSHandle<JSHClass> &hclass, const JSHandle<JSTaggedValue> &proto, bool isChangeProto) SetPrototypeWithNotification() argument 643 auto hclass = JSHClass::Cast(newHClass.GetTaggedValue().GetTaggedObject()); TransitionForRepChange() local 667 JSHClass *hclass = JSHClass::Cast(hclassVal.GetTaggedObject()); IsInitialArrayHClassWithElementsKind() local 689 JSHClass *hclass = JSHClass::Cast(hclassVal.GetTaggedObject()); TransitToElementsKindUncheck() local 753 UpdateFieldType(JSHClass *hclass, const PropertyAttributes &attr) UpdateFieldType() argument 760 FindFieldOwnHClass(JSHClass *hclass, const PropertyAttributes &attr) FindFieldOwnHClass() argument 813 auto hclass = receiver->GetJSHClass(); ConvertOrTransitionWithRep() local 939 NotifyAccessorChanged(const JSThread *thread, JSHandle<JSHClass> hclass) NotifyAccessorChanged() argument 1113 LookupPropertyInAotHClass(const JSThread *thread, JSHClass *hclass, JSTaggedValue key) LookupPropertyInAotHClass() argument 1154 LookupPropertyInPGOHClass(const JSThread *thread, JSHClass *hclass, JSTaggedValue key) LookupPropertyInPGOHClass() argument 1194 LookupPropertyInBuiltinPrototypeHClass(const JSThread *thread, JSHClass *hclass, JSTaggedValue key) LookupPropertyInBuiltinPrototypeHClass() argument 1272 JSHandle<JSHClass> hclass = factory->NewEcmaHClass(size, type, maxNum); CreateRootHClassFromPGO() local 1303 JSHandle<JSHClass> hclass = factory->GetObjectLiteralRootHClass(maxNum); CreateRootHClassWithCached() local 1369 DumpRootHClassByPGO(const JSHClass* hclass, HClassLayoutDesc* desc) DumpRootHClassByPGO() argument 1384 DumpChildHClassByPGO(const JSHClass* hclass, HClassLayoutDesc* desc) DumpChildHClassByPGO() argument 1399 UpdateChildLayoutDescByPGO(const JSHClass* hclass, HClassLayoutDesc* childDesc) UpdateChildLayoutDescByPGO() argument 1413 UpdateRootLayoutDescByPGO(const JSHClass* hclass, HClassLayoutDesc* desc) UpdateRootLayoutDescByPGO() argument 1432 auto hclass = JSHClass::Cast(JSTaggedValue(hclassVal).GetTaggedObject()); DumpToString() local 1462 LookupPropertyInBuiltinHClass(const JSThread *thread, JSHClass *hclass, JSTaggedValue key) LookupPropertyInBuiltinHClass() argument 1523 JSHandle<JSHClass> hclass = CreateSHClass() local 1537 auto hclass = CreateSHClass(thread, descs, nullptr, true); CreateSConstructorHClass() local 1545 auto hclass = CreateSHClass(thread, descs); CreateSPrototypeHClass() local 1551 CreateSInlinedLayout(JSThread *thread, const std::vector<PropertyDescriptor> &descs, const JSHandle<JSHClass> &hclass, const JSHClass *parentHClass) CreateSInlinedLayout() argument 1606 CreateSDictLayout(JSThread *thread, const std::vector<PropertyDescriptor> &descs, const JSHandle<JSHClass> &hclass, const JSHClass *parentHClass) CreateSDictLayout() argument 1663 IsNeedNotifyHclassChangedForAotTransition(const JSThread *thread, const JSHandle<JSHClass> &hclass, JSTaggedValue key) IsNeedNotifyHclassChangedForAotTransition() argument [all...] |
H A D | js_hclass-inl.h | 31 const JSHandle<JSHClass> hclass) in ProtoIsFastJSArray() 33 // Since we currently only support ElementsKind for JSArray initial hclass, in ProtoIsFastJSArray() 34 // if an object's hclass has a non-generic ElementsKind, it must be one of the JSArray initial hclass. in ProtoIsFastJSArray() 35 // if an object's hclass has a Generic ElementsKind, it might be the JSArray initial generic elementskind hclass, in ProtoIsFastJSArray() 36 // which therefore needs further hclass comparison. in ProtoIsFastJSArray() 39 if (!Elements::IsGeneric(hclass->GetElementsKind()) || hclass.GetTaggedValue() == genericArrayHClass) { in ProtoIsFastJSArray() 181 inline JSHClass *JSHClass::CheckHClassForRep(JSHClass *hclass, cons argument 30 ProtoIsFastJSArray(const JSThread *thread, const JSHandle<JSTaggedValue> proto, const JSHandle<JSHClass> hclass) ProtoIsFastJSArray() argument 302 FindRootHClass(JSHClass *hclass) FindRootHClass() argument 315 FindProtoHClass(JSHClass *hclass) FindProtoHClass() argument 325 FindProtoRootHClass(JSHClass *hclass) FindProtoRootHClass() argument 344 FindPropertyEntry(const JSThread *thread, JSHClass *hclass, JSTaggedValue key) FindPropertyEntry() argument [all...] |
H A D | object_fast_operator-inl.h | 103 auto *hclass = receiver.GetTaggedObject()->GetClass(); in HasOwnProperty() member 104 if (LIKELY(!hclass->IsDictionaryMode())) { in HasOwnProperty() 106 int entry = JSHClass::FindPropertyEntry(thread, hclass, key); in HasOwnProperty() 149 auto *hclass = receiver.GetTaggedObject()->GetClass(); in TryFastHasProperty() 150 if (LIKELY(!hclass->IsDictionaryMode())) { in TryFastHasProperty() 161 int entry = JSHClass::FindPropertyEntry(thread, hclass, key); in TryFastHasProperty() 208 auto *hclass = holder.GetTaggedObject()->GetClass(); in TryFastGetPropertyByIndex() local 210 if (!hclass->IsDictionaryElement()) { in TryFastGetPropertyByIndex() 226 auto *hclass = receiver.GetTaggedObject()->GetClass(); in TryGetPropertyByNameThroughCacheAtLocal() local 227 if (LIKELY(!hclass in TryGetPropertyByNameThroughCacheAtLocal() 261 auto *hclass = holder.GetTaggedObject()->GetClass(); GetPropertyByName() local 350 auto *hclass = receiver.GetTaggedObject()->GetClass(); TrySetPropertyByNameThroughCacheAtLocal() local 417 auto *hclass = holder.GetTaggedObject()->GetClass(); SetPropertyByName() local 578 auto *hclass = holder.GetTaggedObject()->GetClass(); GetPropertyByIndex() local 639 auto *hclass = holder.GetTaggedObject()->GetClass(); SetPropertyByIndex() local [all...] |
H A D | js_object-inl.h | 291 JSTaggedValue JSObject::GetPropertyInlinedPropsWithRep(const JSHClass *hclass, uint32_t index, in GetPropertyInlinedPropsWithRep() argument 294 auto value = GetPropertyInlinedProps(hclass, index); in GetPropertyInlinedPropsWithRep() 309 void JSObject::SetPropertyInlinedProps(const JSThread *thread, const JSHClass *hclass, uint32_t index, in SetPropertyInlinedProps() argument 312 uint32_t offset = hclass->GetInlinedPropertiesOffset(index); in SetPropertyInlinedProps() 313 ASSERT(hclass->GetObjectSize() > offset); in SetPropertyInlinedProps() 321 JSTaggedValue JSObject::GetPropertyInlinedProps(const JSHClass *hclass, uint32_t index) const in GetPropertyInlinedProps() argument 323 uint32_t offset = hclass->GetInlinedPropertiesOffset(index); in GetPropertyInlinedProps() 327 JSTaggedValue JSObject::GetProperty(const JSHClass *hclass, PropertyAttributes attr) const in GetProperty() argument 330 return GetPropertyInlinedPropsWithRep(hclass, attr.GetOffset(), attr); in GetProperty() 333 return array->Get(attr.GetOffset() - hclass in GetProperty() 337 SetProperty(const JSThread *thread, const JSHClass *hclass, PropertyAttributes attr, JSTaggedValue value) SetProperty() argument 520 JSHClass *hclass = obj.GetTaggedObject()->GetClass(); GetPrototype() local [all...] |
H A D | shared_object_factory.cpp | 96 JSHandle<JSHClass> ObjectFactory::NewSEcmaHClass(JSHClass *hclass, uint32_t size, JSType type, uint32_t inlinedProps) in NewSEcmaHClass() argument 100 auto *newClass = static_cast<JSHClass *>(sHeap_->AllocateNonMovableOrHugeObject(thread_, hclass, classSize)); in NewSEcmaHClass() 114 JSHandle<JSHClass> hclass(thread_, newClass); in NewSEcmaHClass() 118 hclass->SetProto(thread_, prototype.GetTaggedValue()); in NewSEcmaHClass() 119 hclass->SetNumberOfProps(inlinedProps); in NewSEcmaHClass() 120 hclass->SetExtensible(false); in NewSEcmaHClass() 121 return hclass; in NewSEcmaHClass() 132 JSHandle<JSHClass> hclass(thread_, newClass); in NewSEcmaHClassDictMode() 136 hclass->SetProto(thread_, prototype.GetTaggedValue()); in NewSEcmaHClassDictMode() 137 hclass in NewSEcmaHClassDictMode() 143 NewSEcmaHClassClass(JSHClass *hclass, uint32_t size, JSType type) NewSEcmaHClassClass() argument 152 NewSEcmaReadOnlyHClass(JSHClass *hclass, uint32_t size, JSType type, uint32_t inlinedProps) NewSEcmaReadOnlyHClass() argument 166 JSHClass *hclass = reinterpret_cast<JSHClass *>(hClassHandle.GetTaggedValue().GetTaggedObject()); InitSClassClass() local 237 NewSFunctionByHClass(const JSHandle<Method> &method, const JSHandle<JSHClass> &hclass) NewSFunctionByHClass() argument 253 NewSFunctionWithAccessor(const void *func, const JSHandle<JSHClass> &hclass, FunctionKind kind, kungfu::BuiltinsStubCSigns::ID builtinId, MemSpaceType spaceType) NewSFunctionWithAccessor() argument 262 NewSFunctionByHClass(const void *func, const JSHandle<JSHClass> &hclass, FunctionKind kind, kungfu::BuiltinsStubCSigns::ID builtinId, MemSpaceType spaceType) NewSFunctionByHClass() argument 274 NewSharedOldSpaceObject(const JSHandle<JSHClass> &hclass) NewSharedOldSpaceObject() argument 307 JSHandle<JSHClass> hclass = JSHClass::CreateSHClass(thread_, descs); CreateSObjectWithProperties() local 757 JSHandle<JSHClass> hclass = JSHandle<JSHClass>::Cast(env->GetSharedModuleNamespaceClass()); NewSModuleNamespace() local 927 JSHandle<JSHClass> hclass; NewJSSendableFunction() local [all...] |
/arkcompiler/ets_runtime/ecmascript/tests/ |
H A D | js_proxy_test.cpp | 47 JSHandle<JSTaggedValue> hclass(thread, JSObjectTestCreate(thread)); in HWTEST_F_L0() 49 thread->GetEcmaVM()->GetFactory()->NewJSObjectByConstructor(JSHandle<JSFunction>::Cast(hclass), hclass)); in HWTEST_F_L0() 57 thread->GetEcmaVM()->GetFactory()->NewJSObjectByConstructor(JSHandle<JSFunction>::Cast(hclass), hclass)); in HWTEST_F_L0() 74 JSHandle<JSTaggedValue> hclass(thread, JSObjectTestCreate(thread)); in SetPropertyCommon() 75 targetHandle = JSHandle<JSTaggedValue>(factory->NewJSObjectByConstructor(JSHandle<JSFunction>(hclass), hclass)); in SetPropertyCommon() 80 handlerHandle = JSHandle<JSTaggedValue>(factory->NewJSObjectByConstructor(JSHandle<JSFunction>(hclass), hclass)); in SetPropertyCommon() [all...] |
/arkcompiler/ets_runtime/ecmascript/builtins/tests/ |
H A D | builtins_sharedobject_test.cpp | 44 JSHClass *hclass = sharedObjectPrototype->GetTaggedObject()->GetClass(); in HWTEST_F_L0() local 45 ASSERT_FALSE(hclass->IsExtensible()); in HWTEST_F_L0() 46 ASSERT_FALSE(hclass->IsConstructor()); in HWTEST_F_L0() 47 ASSERT_FALSE(hclass->IsCallable()); in HWTEST_F_L0() 48 ASSERT_TRUE(hclass->IsJSSharedObject()); in HWTEST_F_L0() 49 ASSERT_TRUE(hclass->GetProto().IsNull()); in HWTEST_F_L0() 116 JSHClass *hclass = method->GetTaggedObject()->GetClass(); in HWTEST_F_L0() local 117 ASSERT_FALSE(hclass->IsExtensible()); in HWTEST_F_L0() 118 ASSERT_TRUE(!hclass->IsConstructor()); in HWTEST_F_L0() 119 ASSERT_TRUE(hclass in HWTEST_F_L0() [all...] |
/arkcompiler/ets_runtime/ecmascript/containers/tests/ |
H A D | containers_test_helper.h | 43 JSHandle<JSTaggedValue> hclass(thread, JSObjectTestCreate(thread)); in CreateJSProxyHandle() 45 thread->GetEcmaVM()->GetFactory()->NewJSObjectByConstructor(JSHandle<JSFunction>::Cast(hclass), hclass)); in CreateJSProxyHandle() 47 thread->GetEcmaVM()->GetFactory()->NewJSObjectByConstructor(JSHandle<JSFunction>::Cast(hclass), hclass)); in CreateJSProxyHandle()
|
/arkcompiler/ets_runtime/ecmascript/pgo_profiler/ |
H A D | pgo_profiler.cpp | 28 void PGOProfiler::RecordProfileType(JSHClass *hclass, JSPandaFile *pandaFile, int32_t traceId) in RecordProfileType() argument 33 ProfileType traceType = GetProfileType(hclass); in RecordProfileType() 37 SetRootProfileType(hclass, abcId, traceId, ProfileType::Kind::ObjectLiteralId); in RecordProfileType() 108 JSHandle<JSHClass> hclass, in ProfileProtoTransitionClass() 121 ProfileClassRootHClass(func.GetTaggedType(), hclass.GetTaggedType()); in ProfileProtoTransitionClass() 127 ProfileClassRootHClass(func.GetTaggedType(), hclass.GetTaggedType()); in ProfileProtoTransitionClass() 130 [[maybe_unused]] bool success = transitionTable->TryInsertFakeParentItem(hclass.GetTaggedType(), ihc); in ProfileProtoTransitionClass() 135 ProfileClassRootHClass(func.GetTaggedType(), hclass.GetTaggedType(), ProfileType::Kind::TransitionClassId); in ProfileProtoTransitionClass() 261 // we update cachedHClass with initial array hclass which does not have IsPrototype set. in UpdateTrackElementsKind() 263 auto hclass in UpdateTrackElementsKind() local 107 ProfileProtoTransitionClass(JSHandle<JSFunction> func, JSHandle<JSHClass> hclass, JSHandle<JSTaggedValue> proto) ProfileProtoTransitionClass() argument 982 JSHClass *hclass = JSHClass::Cast(object); DumpICByName() local 1005 JSHClass *hclass = JSHClass::Cast(object); DumpICByValue() local 1037 JSHClass *hclass = JSHClass::Cast(object); DumpICByNameWithPoly() local 1064 JSHClass *hclass = JSHClass::Cast(object); DumpICByValueWithPoly() local 1069 DumpICByNameWithHandler(ApEntityId abcId, const CString &recordName, EntityId methodId, int32_t bcOffset, JSHClass *hclass, JSTaggedValue secondValue, BCType type) DumpICByNameWithHandler() argument 1122 DumpICLoadByNameWithHandler(ApEntityId abcId, const CString &recordName, EntityId methodId, int32_t bcOffset, JSHClass *hclass, JSTaggedValue secondValue) DumpICLoadByNameWithHandler() argument 1164 DumpICByValueWithHandler(ApEntityId abcId, const CString &recordName, EntityId methodId, int32_t bcOffset, JSHClass *hclass, JSTaggedValue secondValue, BCType type) DumpICByValueWithHandler() argument 1262 TryDumpProtoTransitionType(JSHClass *hclass) TryDumpProtoTransitionType() argument 1423 auto hclass = JSHClass::Cast(cachedHClass.GetTaggedObject()); DumpCreateObject() local 1516 JSHClass *hclass = JSHClass::Cast(object); DumpInstanceof() local 1533 UpdateLayout(JSHClass *hclass) UpdateLayout() argument 1537 UpdateTransitionLayout(JSHClass::Cast(parentHClass.GetTaggedObject()), hclass); UpdateLayout() local 1855 FindRootProfileType(JSHClass *hclass) FindRootProfileType() argument 1872 GetProfileType(JSHClass *hclass, bool check) GetProfileType() argument [all...] |
/arkcompiler/ets_runtime/ecmascript/base/ |
H A D | fast_json_stringifier.h | 111 inline int32_t FindCache(JSHClass *hclass, size_t numOfKeys) in FindCache() argument 113 size_t index = GetHash(hclass, numOfKeys); in FindCache() 116 if (JSHClass::Cast(cacheHclass.GetTaggedObject()) == hclass) { in FindCache() 120 if (JSHClass::Cast(cacheHclass.GetTaggedObject()) == hclass) { in FindCache() 130 inline void SetCache(JSHClass *hclass, size_t numOfKeys, CVector<std::pair<CString, int>> &value) in SetCache() argument 132 size_t index = GetHash(hclass, numOfKeys); in SetCache() 140 hclassCache_->Set(thread_, index, JSTaggedValue(hclass)); in SetCache() 144 inline size_t GetHash(JSHClass *hclass, size_t numOfKeys) in GetHash() argument 146 uintptr_t ptr = reinterpret_cast<uintptr_t>(hclass); in GetHash()
|
/arkcompiler/ets_runtime/ecmascript/compiler/pgo_type/ |
H A D | pgo_type_manager.cpp | 72 JSHClass* hclass = JSHClass::Cast(JSTaggedValue(child.second).GetTaggedObject()); in GetSymbolCountFromHClassData() local 73 if (!hclass->HasTransitions()) { in GetSymbolCountFromHClassData() 74 LayoutInfo* layoutInfo = LayoutInfo::GetLayoutInfoFromHClass(hclass); in GetSymbolCountFromHClassData() 75 uint32_t len = hclass->NumberOfProps(); in GetSymbolCountFromHClassData() 102 JSHClass* hclass = JSHClass::Cast(JSTaggedValue(child.second).GetTaggedObject()); in GenSymbolInfo() local 103 if (!hclass->HasTransitions()) { in GenSymbolInfo() 104 LayoutInfo* layoutInfo = LayoutInfo::GetLayoutInfoFromHClass(hclass); in GenSymbolInfo() 105 uint32_t len = hclass->NumberOfProps(); in GenSymbolInfo() 131 uint32_t count = 1; // For object literal hclass cache in GenHClassInfo() 144 JSTaggedType hclass in GenHClassInfo() local 223 RecordHClass(ProfileType rootType, ProfileType childType, JSTaggedType hclass, bool update) RecordHClass() argument [all...] |
/arkcompiler/ets_runtime/ecmascript/compiler/ |
H A D | new_object_stub_builder.cpp | 47 auto hclass = GetGlobalConstantValue(
in NewLexicalEnv() local 49 AllocateInYoung(result, &hasPendingException, &noException, hclass);
in NewLexicalEnv() 52 StoreHClass(glue_, result->ReadVariable(), hclass);
in NewLexicalEnv() 69 GateRef NewObjectStubBuilder::NewJSArrayWithSize(GateRef hclass, GateRef size)
in NewJSArrayWithSize() argument 76 GateRef result = NewJSObject(glue_, hclass);
in NewJSArrayWithSize() 111 GateRef method, GateRef hclass, FunctionKind targetKind)
in NewJSFunctionByHClass() 113 GateRef result = NewJSObject(glue, hclass);
in NewJSFunctionByHClass() 114 SetExtensibleToBitfield(glue, hclass, true);
in NewJSFunctionByHClass() 118 builtinsFunctionStubBuilder.InitializeFunctionWithMethod(glue, result, method, hclass);
in NewJSFunctionByHClass() 123 GateRef method, GateRef hclass, FunctionKin in NewSFunctionByHClass() 110 NewJSFunctionByHClass(GateRef glue, GateRef method, GateRef hclass, FunctionKind targetKind) NewJSFunctionByHClass() argument 122 NewSFunctionByHClass(GateRef glue, GateRef method, GateRef hclass, FunctionKind targetKind) NewSFunctionByHClass() argument 135 GateRef hclass = LoadHClass(value); CloneJSFunction() local 177 GateRef hclass = LoadHClass(elements); CloneProperties() local 183 GateRef hclass = LoadHClass(elements); CloneProperties() local 235 GateRef hclass = GetGlobalConstantValue( NewAccessorData() local 260 GateRef hclass = LoadHClass(literal); CloneObjectLiteral() local 389 NewJSObject(Variable *result, Label *exit, GateRef hclass) NewJSObject() argument 433 NewSObject(Variable *result, Label *exit, GateRef hclass) NewSObject() argument 540 NewJSObject(Variable *result, Label *exit, GateRef hclass, GateRef size) NewJSObject() argument 564 NewJSObject(GateRef glue, GateRef hclass) NewJSObject() argument 581 NewSObject(GateRef glue, GateRef hclass) NewSObject() argument 615 auto hclass = GetGlobalConstantValue( NewTaggedArrayChecked() local 634 auto hclass = GetGlobalConstantValue( NewMutantTaggedArrayChecked() local 743 auto hclass = GetGlobalConstantValue( ExtendArray() local 893 GateRef hclass = GetGlobalEnvValue(VariableType::JS_ANY(), glueGlobalEnv, GlobalEnv::FOR_IN_ITERATOR_CLASS_INDEX); NewJSForinIterator() local 1033 GateRef hclass = LoadHClassFromMethod(glue, method); NewJSFunction() local 1039 GateRef hclass = LoadSHClassFromMethod(glue, method); NewJSSendableFunction() local 1129 GateRef hclass = GetGlobalEnvValue(VariableType::JS_ANY(), glueGlobalEnv, GlobalEnv::BOUND_FUNCTION_CLASS); NewJSBoundFunction() local 1200 GateRef hclass = LoadHClass(*object); EnumerateObjectProperties() local 1353 NewJSArrayLiteral(Variable *result, Label *exit, RegionSpaceFlag spaceType, GateRef obj, GateRef hclass, GateRef trackInfo, bool isEmptyArray) NewJSArrayLiteral() argument 1394 HeapAlloc(Variable *result, Label *exit, RegionSpaceFlag spaceType, GateRef hclass) HeapAlloc() argument 1446 AllocateInSOld(Variable *result, Label *exit, GateRef hclass) AllocateInSOld() argument 1496 AllocateInYoung(Variable *result, Label *exit, GateRef hclass) AllocateInYoung() argument 1511 AllocateInYoung(Variable *result, Label *error, Label *noError, GateRef hclass) AllocateInYoung() argument 1535 auto hclass = GetGlobalConstantValue(VariableType::JS_POINTER(), glue, ConstantIndex::TRACK_INFO_CLASS_INDEX); NewTrackInfo() local 1827 auto hclass = LoadArrayHClassSlowPath(glue, jsFunc, traceIdInfo, arrayLiteral, callback); LoadTrackInfo() local 1903 CreateEmptyArrayCommon(GateRef glue, GateRef hclass, GateRef trackInfo) CreateEmptyArrayCommon() argument 1929 GateRef hclass = Load(VariableType::JS_POINTER(), objectFunc, IntPtr(JSFunction::PROTO_OR_DYNCLASS_OFFSET)); CreateEmptyObject() local 1940 GateRef hclass = Load(VariableType::JS_POINTER(), arrayFunc, IntPtr(JSFunction::PROTO_OR_DYNCLASS_OFFSET)); CreateEmptyArray() local 2200 GateRef hclass = LoadHClass(srcTypedArray); NewTypedArray() local 2315 GateRef hclass = Load(VariableType::JS_POINTER(), arrayFunc, IntPtr(JSFunction::PROTO_OR_DYNCLASS_OFFSET)); NewFloat32ArrayObj() local 2412 auto hclass = GetGlobalConstantValue(VariableType::JS_POINTER(), glue_, ConstantIndex::BYTE_ARRAY_CLASS_INDEX); NewByteArray() local 2436 auto hclass = GetGlobalConstantValue(VariableType::JS_POINTER(), glue, NewProfileTypeInfoCell() local [all...] |
H A D | new_object_stub_builder.h | 54 void NewJSObject(Variable *result, Label *exit, GateRef hclass, GateRef size);
55 void NewJSObject(Variable *result, Label *exit, GateRef hclass);
56 void NewSObject(Variable *result, Label *exit, GateRef hclass);
57 GateRef NewJSObject(GateRef glue, GateRef hclass);
58 GateRef NewSObject(GateRef glue, GateRef hclass);
59 GateRef NewJSFunctionByHClass(GateRef glue, GateRef method, GateRef hclass,
61 GateRef NewSFunctionByHClass(GateRef glue, GateRef method, GateRef hclass,
69 GateRef NewJSArray(GateRef glue, GateRef hclass);
80 GateRef NewJSArrayWithSize(GateRef hclass, GateRef size);
105 void HeapAlloc(Variable *result, Label *exit, RegionSpaceFlag spaceType, GateRef hclass);
[all...] |
/arkcompiler/ets_runtime/ecmascript/ic/ |
H A D | ic_runtime.cpp | 44 JSHandle<JSHClass> hclass(GetThread(), receiver->GetTaggedObject()->GetClass()); in UpdateLoadHandler() 48 if (hclass->IsTS() && !op.IsFound()) { in UpdateLoadHandler() 52 if (!op.IsFound() && hclass->IsDictionaryElement()) { in UpdateLoadHandler() 58 JSTaggedValue proto = hclass->GetPrototype(); in UpdateLoadHandler() 62 handlerValue = PrototypeHandler::LoadPrototype(thread_, op, hclass); in UpdateLoadHandler() 71 handlerValue = PrototypeHandler::LoadPrototype(thread_, op, hclass); in UpdateLoadHandler() 76 hclass = originhclass; in UpdateLoadHandler() 79 icAccessor_.AddHandlerWithoutKey(JSHandle<JSTaggedValue>::Cast(hclass), handlerValue); in UpdateLoadHandler() 85 icAccessor_.AddElementHandler(JSHandle<JSTaggedValue>::Cast(hclass), handlerValue); in UpdateLoadHandler() 87 icAccessor_.AddHandlerWithKey(key, JSHandle<JSTaggedValue>::Cast(hclass), handlerValu in UpdateLoadHandler() [all...] |
H A D | profile_type_info.cpp | 19 void ProfileTypeAccessor::AddElementHandler(JSHandle<JSTaggedValue> hclass, JSHandle<JSTaggedValue> handler) const in AddElementHandler() argument 26 profileTypeInfo_->SetMultiIcSlotLocked(thread_, index, GetWeakRef(hclass.GetTaggedValue()), in AddElementHandler() 32 profileTypeInfo_->SetMultiIcSlotLocked(thread_, index, GetWeakRef(hclass.GetTaggedValue()), in AddElementHandler() 36 AddHandlerWithoutKey(hclass, handler); in AddElementHandler() 39 void ProfileTypeAccessor::AddWithoutKeyPoly(JSHandle<JSTaggedValue> hclass, JSHandle<JSTaggedValue> handler, in AddWithoutKeyPoly() argument 57 newArr->Set(thread_, i, GetWeakRef(hclass.GetTaggedValue())); in AddWithoutKeyPoly() 62 void ProfileTypeAccessor::AddHandlerWithoutKey(JSHandle<JSTaggedValue> hclass, JSHandle<JSTaggedValue> handler) const in AddHandlerWithoutKey() argument 73 profileTypeInfo_->SetMultiIcSlotLocked(thread_, index, GetWeakRef(hclass.GetTaggedValue()), in AddHandlerWithoutKey() 78 AddWithoutKeyPoly(hclass, handler, index, profileData); in AddHandlerWithoutKey() 87 newArr->Set(thread_, arrIndex++, GetWeakRef(hclass in AddHandlerWithoutKey() 93 AddHandlerWithKey(JSHandle<JSTaggedValue> key, JSHandle<JSTaggedValue> hclass, JSHandle<JSTaggedValue> handler) const AddHandlerWithKey() argument [all...] |
/arkcompiler/ets_runtime/ecmascript/mem/shared_heap/ |
H A D | shared_gc_marker.cpp | 134 JSHClass *hclass = obj->SynchronizedGetClass(); in ProcessMarkStack() local 135 auto size = hclass->SizeFromJSHClass(obj); in ProcessMarkStack() 140 MarkObject(threadId, hclass, objectSlot); in ProcessMarkStack() 141 ObjectXRay::VisitObjectBody<VisitType::OLD_GC_VISIT>(obj, hclass, visitor); in ProcessMarkStack() 182 JSHClass *hclass = obj->SynchronizedGetClass(); in ProcessMarkStack() local 185 MarkObject(threadId, hclass, objectSlot); in ProcessMarkStack() 186 ObjectXRay::VisitObjectBody<VisitType::OLD_GC_VISIT>(obj, hclass, visitor); in ProcessMarkStack()
|
/arkcompiler/ets_runtime/ecmascript/jspandafile/ |
H A D | class_info_extractor.cpp | 205 JSHandle<JSHClass> hclass; in CreatePrototypeHClass() local 224 hclass = factory->NewEcmaHClass(JSObject::SIZE, JSType::JS_OBJECT, length); in CreatePrototypeHClass() 226 hclass->SetLayout(thread, layout); in CreatePrototypeHClass() 227 hclass->SetNumberOfProps(length); in CreatePrototypeHClass() 230 hclass = factory->NewEcmaHClass(JSObject::SIZE, JSType::JS_OBJECT, 0); // without in-obj in CreatePrototypeHClass() 231 hclass->SetIsDictionaryMode(true); in CreatePrototypeHClass() 232 hclass->SetNumberOfProps(0); in CreatePrototypeHClass() 235 hclass->SetClassPrototype(true); in CreatePrototypeHClass() 236 hclass->SetIsPrototype(true); in CreatePrototypeHClass() 237 return hclass; in CreatePrototypeHClass() 255 JSHandle<JSHClass> hclass; CreateConstructorHClass() local 346 JSHandle<JSHClass> hclass; CreateSendableHClass() local 947 AddFieldTypeToHClass(JSThread *thread, const JSHandle<TaggedArray> &fieldTypeArray, uint32_t length, const JSHandle<LayoutInfo> &layout, const JSHandle<JSHClass> &hclass, size_t start, const JSHandle<NumberDictionary> &elementsDic, std::vector<JSHandle<JSTaggedValue>> &&propertyList) AddFieldTypeToHClass() argument 1003 AddFieldTypeToHClass(JSThread *thread, const JSHandle<TaggedArray> &fieldTypeArray, uint32_t length, const JSHandle<NameDictionary> &nameDict, const JSHandle<JSHClass> &hclass) AddFieldTypeToHClass() argument [all...] |
/arkcompiler/ets_runtime/ecmascript/stubs/ |
H A D | test_runtime_stubs.cpp | 109 JSHandle<JSTaggedValue> hclass(thread, function); in DEF_RUNTIME_STUBS() 112 JSHandle<JSTaggedValue> handlerHandle(factory->NewJSObjectByConstructor(JSHandle<JSFunction>(hclass), hclass)); in DEF_RUNTIME_STUBS() 131 JSHandle<JSTaggedValue> hclass(thread, function); in DEF_RUNTIME_STUBS() 133 JSHandle<JSTaggedValue> handlerHandle(factory->NewJSObjectByConstructor(JSHandle<JSFunction>(hclass), hclass)); in DEF_RUNTIME_STUBS()
|
/arkcompiler/ets_runtime/test/fuzztest/builtinsarraybufferarraybufferconstructor_fuzzer/ |
H A D | builtinsarraybufferarraybufferconstructor_fuzzer.cpp | 38 JSHandle<JSTaggedValue> hclass(thread, newTgt); in CreateEcmaRuntimeCallInfo() 39 JSHandle<JSTaggedValue> callee(factory->NewJSObjectByConstructor(JSHandle<JSFunction>::Cast(hclass), hclass)); in CreateEcmaRuntimeCallInfo()
|