/arkcompiler/ets_runtime/ecmascript/jit/ |
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 *hclas [all...] |
H A D | jit_profiler.cpp | 361 JSHClass* hclass = nullptr; in ConvertNewObjRange() 374 hclass = JSHClass::Cast(protoOrHClass.GetTaggedObject()); in ConvertNewObjRange() 418 auto newHClass = JSHClass::Cast(object); in ConvertCreateObject() 425 auto hclass = JSHClass::Cast(trackInfo->GetCachedHClass().GetTaggedObject()); in ConvertCreateObject() 451 JSHClass *hclass = JSHClass::Cast(object); in ConvertICByName() 460 JSHClass *hclass, in ConvertICByNameWithHandler() 472 JSHClass *hclass, JSTaggedValue &secondValue, uint32_t slotId) in HandleLoadType() 482 JSHClass *hclass, JSTaggedValue &secondValue) in HandleLoadTypeInt() 497 JSHClass *hclas in HandleLoadTypePrototypeHandler() [all...] |
/arkcompiler/ets_runtime/ecmascript/ |
H A D | js_hclass.cpp | 123 void JSHClass::InitializeWithDefaultValue(const JSThread *thread, uint32_t size, JSType type, uint32_t inlinedProps) in InitializeWithDefaultValue() 153 bool JSHClass::IsJSTypeShared(JSType type) in IsJSTypeShared() 189 // class JSHClass 190 void JSHClass::Initialize(const JSThread *thread, uint32_t size, JSType type, uint32_t inlinedProps) in Initialize() 199 void JSHClass::Initialize(const JSThread *thread, uint32_t size, JSType type, in Initialize() 211 JSHandle<JSHClass> JSHClass::Clone(const JSThread *thread, const JSHandle<JSHClass> &jshclass, in Clone() 217 JSHandle<JSHClass> newJsHClass; in Clone() 239 JSHandle<JSHClass> JSHClas [all...] |
H A D | js_hclass-inl.h | 30 bool JSHClass::ProtoIsFastJSArray(const JSThread *thread, const JSHandle<JSTaggedValue> proto, in ProtoIsFastJSArray() 31 const JSHandle<JSHClass> hclass) in ProtoIsFastJSArray() 46 void JSHClass::AddTransitions(const JSThread *thread, const JSHandle<JSHClass> &parent, const JSHandle<JSHClass> &child, in AddTransitions() 58 auto cachedHClass = JSHClass::Cast(transitions.GetTaggedWeakRef()); in AddTransitions() 78 void JSHClass::AddExtensionTransitions(const JSThread *thread, const JSHandle<JSHClass> &parent, in AddExtensionTransitions() 79 const JSHandle<JSHClass> &child, const JSHandle<JSTaggedValue> &key) in AddExtensionTransitions() 85 void JSHClass [all...] |
H A D | js_hclass.h | 379 class JSHClass : public TaggedObject { class 420 static JSHClass *Cast(const TaggedObject *object) in Cast() 423 return static_cast<JSHClass *>(const_cast<TaggedObject *>(object)); in Cast() 434 static JSHandle<JSHClass> Clone(const JSThread *thread, const JSHandle<JSHClass> &jshclass, 436 static JSHandle<JSHClass> CloneWithoutInlinedProperties(const JSThread *thread, const JSHandle<JSHClass> &jshclass); 437 static JSHandle<JSHClass> CloneWithElementsKind(const JSThread *thread, const JSHandle<JSHClass> &jshclass, 445 static JSHandle<JSHClass> SetPropertyOfObjHClas [all...] |
H A D | shared_object_factory.cpp | 50 JSHandle<JSHClass> ObjectFactory::CreateSFunctionClass(uint32_t size, JSType type, in CreateSFunctionClass() 84 JSHandle<JSHClass> functionClass = NewSEcmaHClass(size, fieldOrder, type, prototype, in CreateSFunctionClass() 90 JSHandle<JSHClass> ObjectFactory::NewSEcmaHClass(uint32_t size, JSType type, uint32_t inlinedProps) in NewSEcmaHClass() 92 return NewSEcmaHClass(JSHClass::Cast(thread_->GlobalConstants()->GetHClassClass().GetTaggedObject()), in NewSEcmaHClass() 96 JSHandle<JSHClass> ObjectFactory::NewSEcmaHClass(JSHClass *hclass, uint32_t size, JSType type, uint32_t inlinedProps) in NewSEcmaHClass() 99 uint32_t classSize = JSHClass::SIZE; in NewSEcmaHClass() 100 auto *newClass = static_cast<JSHClass *>(sHeap_->AllocateNonMovableOrHugeObject(thread_, hclass, classSize)); in NewSEcmaHClass() 102 return JSHandle<JSHClass>(thread_, newClass); in NewSEcmaHClass() 106 JSHandle<JSHClass> ObjectFactor [all...] |
H A D | object_factory.cpp | 136 JSHandle<JSHClass> ObjectFactory::NewEcmaHClassClass(JSHClass *hclass, uint32_t size, JSType type) in NewEcmaHClassClass() 139 uint32_t classSize = JSHClass::SIZE; in NewEcmaHClassClass() 140 auto *newClass = static_cast<JSHClass *>(heap_->AllocateClassClass(hclass, classSize)); in NewEcmaHClassClass() 143 return JSHandle<JSHClass>(thread_, newClass); in NewEcmaHClassClass() 146 JSHandle<JSHClass> ObjectFactory::InitClassClass() in InitClassClass() 148 JSHandle<JSHClass> hClassHandle = NewEcmaHClassClass(nullptr, JSHClass::SIZE, JSType::HCLASS); in InitClassClass() 149 JSHClass *hclass = reinterpret_cast<JSHClass *>(hClassHandl in InitClassClass() [all...] |
H A D | object_factory-inl.h | 43 object->SetClass(thread_, JSHClass::Cast(thread_->GlobalConstants()->GetLineStringClass().GetTaggedObject())); in AllocLineStringObjectNoGC() 51 thread_, JSHClass::Cast(thread_->GlobalConstants()->GetLineStringClass().GetTaggedObject()), size)); in AllocNonMovableLineStringObject() 58 thread_, JSHClass::Cast(thread_->GlobalConstants()->GetLineStringClass().GetTaggedObject()), size)); in AllocLineStringObject() 65 thread_, JSHClass::Cast(thread_->GlobalConstants()->GetLineStringClass().GetTaggedObject()), size)); in AllocOldSpaceLineStringObject() 72 thread_, JSHClass::Cast(thread_->GlobalConstants()->GetLineStringClass().GetTaggedObject()), size)); in AllocReadOnlyLineStringObject() 80 JSHClass::Cast(thread_->GlobalConstants()->GetSlicedStringClass().GetTaggedObject()), type)); in AllocSlicedStringObject() 88 JSHClass::Cast(thread_->GlobalConstants()->GetConstantStringClass().GetTaggedObject()), type)); in AllocConstantStringObject() 95 thread_, JSHClass::Cast(thread_->GlobalConstants()->GetTreeStringClass().GetTaggedObject()), in AllocTreeStringObject() 109 auto jsNativePointerClass = JSHClass::Cast(thread_->GlobalConstants()->GetJSNativePointerClass().GetTaggedObject()); in NewJSNativePointer() 139 JSHClass in InlineNewLexicalEnv() [all...] |
H A D | object_factory.h | 230 JSHandle<JSObject> NewEmptyJSObject(uint32_t inlinedProps = JSHClass::DEFAULT_CAPACITY_OF_IN_OBJECTS); 284 // get JSHClass for Ecma ClassLinker 285 JSHandle<GlobalEnv> NewGlobalEnv(JSHClass *globalEnvClass); 287 // get JSHClass for Ecma ClassLinker 337 JSHandle<JSArray> PUBLIC_API NewJSArray(size_t length, JSHandle<JSHClass> &hclass); 435 TaggedObject *NewObject(const JSHandle<JSHClass> &hclass); 437 TaggedObject *NewNonMovableObject(const JSHandle<JSHClass> &hclass, uint32_t inobjPropCount = 0); 439 void InitializeExtraProperties(const JSHandle<JSHClass> &hclass, TaggedObject *obj, uint32_t inobjPropCount); 538 JSHandle<JSObject> NewOldSpaceObjLiteralByHClass(const JSHandle<JSHClass> &hclass); 539 JSHandle<JSHClass> SetLayoutInObjHClas [all...] |
H A D | js_thread_hclass_entries.h | 25 class JSHClass; 42 JSHClass *builtinHClass = nullptr; 45 JSHClass *instanceHClass = nullptr; 47 JSHClass *prototypeHClass = nullptr; 49 JSHClass *prototypeOfPrototypeHClass = nullptr; 51 JSHClass *extraHClass = nullptr;
|
/arkcompiler/ets_runtime/ecmascript/builtins/ |
H A D | builtins.h | 86 JSHandle<JSHClass> CreateFunctionHClass(const JSHandle<JSFunction> &funcPrototype) const; 88 JSHandle<JSHClass> CreateFunctionPrototypeHClass(const JSHandle<GlobalEnv> &env, 95 const JSHandle<JSHClass> &primRefObjClass); 97 void InitializeBigInt(const JSHandle<GlobalEnv> &env, const JSHandle<JSHClass> &primRefObjClass) const; 104 void InitializeBoolean(const JSHandle<GlobalEnv> &env, const JSHandle<JSHClass> &primRefObjClass) const; 106 void InitializeSymbol(const JSHandle<GlobalEnv> &env, const JSHandle<JSHClass> &objFuncClass) const; 108 void InitializeSymbolWithRealm(const JSHandle<GlobalEnv> &realm, const JSHandle<JSHClass> &objFuncInstanceHClass); 112 JSHandle<JSObject> InitializeArrayPrototype(JSHandle<JSHClass> &arrBaseFuncInstanceHClass) const; 114 JSHandle<JSHClass> InitializeArrayPrototypeHClass(const JSHandle<JSObject> &arrFuncPrototype) const; 122 void InitializeInt8Array(const JSHandle<GlobalEnv> &env, const JSHandle<JSHClass> [all...] |
H A D | shared_builtins.cpp | 54 JSHandle<JSHClass> sobjPrototypeHClass = CreateSObjectPrototypeHClass(); in InitializeSObjectAndSFunction() 61 JSHandle<JSHClass> sObjIHClass = in InitializeSObjectAndSFunction() 65 JSHandle<JSHClass> sFuncPrototypeHClass = CreateSFunctionPrototypeHClass(sObjPrototypeVal); in InitializeSObjectAndSFunction() 93 void Builtins::InitializeSObject(const JSHandle<GlobalEnv> &env, const JSHandle<JSHClass> &sObjIHClass, in InitializeSObject() 99 JSHandle<JSHClass> sObjectFunctionHClass = CreateSObjectFunctionHClass(sFuncPrototype); in InitializeSObject() 133 JSHandle<JSHClass> arrayBufferPrototypeHClass = CreateSArrayBufferPrototypeHClass(sObjPrototype); in InitializeSArrayBuffer() 141 JSHandle<JSHClass> arrayBufferIHClass = factory_->NewSEcmaHClass( in InitializeSArrayBuffer() 145 JSHandle<JSHClass> arrayBufferFuncHClass = CreateSArrayBufferFunctionHClass(sFuncPrototype); in InitializeSArrayBuffer() 196 JSHandle<JSHClass> setPrototypeHClass = CreateSSetPrototypeHClass(sObjPrototype); in InitializeSSet() 203 JSHandle<JSHClass> setIHClas in InitializeSSet() [all...] |
/arkcompiler/ets_runtime/ecmascript/mem/ |
H A D | tagged_object.h | 22 class JSHClass; 35 void SynchronizedSetClass(const JSThread *thread, JSHClass *hclass); 36 JSHClass *SynchronizedGetClass() const; 37 void SetClassWithoutBarrier(JSHClass *hclass); 39 JSHClass *GetClass() const in GetClass() 41 return reinterpret_cast<JSHClass *>(class_); in GetClass() 54 void SetClass(const JSThread *thread, JSHClass *hclass); 55 void SetClass(const JSThread *thread, JSHandle<JSHClass> hclass);
|
H A D | tagged_object-inl.h | 28 inline void TaggedObject::SetClassWithoutBarrier(JSHClass *hclass) in SetClassWithoutBarrier() 33 inline void TaggedObject::SetClass(const JSThread *thread, JSHClass *hclass) in SetClass() 38 inline void TaggedObject::SetClass(const JSThread *thread, JSHandle<JSHClass> hclass) in SetClass() 43 inline void TaggedObject::SynchronizedSetClass(const JSThread *thread, JSHClass *hclass) in SynchronizedSetClass() 48 inline JSHClass *TaggedObject::SynchronizedGetClass() const in SynchronizedGetClass() 50 return reinterpret_cast<JSHClass *>( in SynchronizedGetClass()
|
H A D | mark_word.h | 27 class JSHClass; 64 JSHClass *GetJSHClass() const in GetJSHClass() 66 return reinterpret_cast<JSHClass *>(value_ & (~TAG_MARK_BIT)); in GetJSHClass()
|
/arkcompiler/ets_runtime/ecmascript/pgo_profiler/ |
H A D | pgo_profiler.h | 62 void PUBLIC_API RecordProfileType(JSHClass *hclass, JSPandaFile *pandaFile, int32_t traceId); 67 JSHandle<JSHClass> hclass, 73 void ProfileDefineGetterSetter(JSHClass *receverHClass, 74 JSHClass *holderHClass, 79 void UpdateRootProfileTypeSafe(JSHClass* oldHClass, JSHClass* newHClass); 108 JSTaggedValue TryFindKeyInPrototypeChain(TaggedObject *currObj, JSHClass *currHC, JSTaggedValue key); 174 JSHClass *hclass, JSTaggedValue secondValue, BCType type); 176 JSHClass *hclass, JSTaggedValue secondValue); 178 JSHClass *hclas [all...] |
H A D | pgo_profiler.cpp | 28 void PGOProfiler::RecordProfileType(JSHClass *hclass, JSPandaFile *pandaFile, int32_t traceId) in RecordProfileType() 68 auto ihc = JSHClass::Cast(protoOrHClass.GetTaggedObject()); in ProfileDefineClass() 102 auto rootHc = JSHClass::Cast(JSTaggedValue(rootHcValue).GetTaggedObject()); in ProfileClassRootHClass() 108 JSHandle<JSHClass> hclass, in ProfileProtoTransitionClass() 115 JSHClass *phc = proto->GetTaggedObject()->GetClass(); in ProfileProtoTransitionClass() 116 JSHClass *phcRoot = JSHClass::FindRootHClass(phc); in ProfileProtoTransitionClass() 164 if (JSHandle<JSHClass>(baseIhc)->IsDictionaryMode() || JSHandle<JSHClass>(transPhc)->IsDictionaryMode()) { in ProfileProtoTransitionPrototype() 174 JSHandle<JSHClass> ih in ProfileProtoTransitionPrototype() [all...] |
/arkcompiler/ets_runtime/ecmascript/tests/ |
H A D | js_hclass_test.cpp | 38 JSHandle<JSHClass> objectClass = in HWTEST_F_L0() 58 JSHandle<JSHClass> objectClass = factory->NewEcmaHClass(TaggedArray::SIZE, JSType::TAGGED_ARRAY, nullHandle); in HWTEST_F_L0() 99 JSHandle<JSHClass> obj1Class = factory->NewEcmaHClass(TaggedArray::SIZE, JSType::LINE_STRING, nullHandle); in HWTEST_F_L0() 100 JSHandle<JSHClass> obj2Class = factory->NewEcmaHClass(TaggedArray::SIZE, JSType::TREE_STRING, nullHandle); in HWTEST_F_L0() 101 JSHandle<JSHClass> obj3Class = in HWTEST_F_L0() 103 JSHandle<JSHClass> obj4Class = factory->NewEcmaHClass(TaggedArray::SIZE, JSType::JS_OBJECT, nullHandle); in HWTEST_F_L0() 104 JSHandle<JSHClass> obj5Class = factory->NewEcmaHClass(TaggedArray::SIZE, JSType::SLICED_STRING, nullHandle); in HWTEST_F_L0() 118 JSHandle<JSHClass> objectClass = factory->NewEcmaHClass(JSObject::SIZE, JSType::JS_OBJECT, nullHandle); in HWTEST_F_L0() 120 JSHandle<JSHClass> cloneClass = JSHClass in HWTEST_F_L0() [all...] |
H A D | object_factory_test.cpp | 51 JSHandle<JSHClass> newObjCls(thread, newObj->GetJSHClass()); in HWTEST_F_L0() 61 JSHClass *cls = *newObjCls; in HWTEST_F_L0() 63 JSObject::SIZE + JSHClass::DEFAULT_CAPACITY_OF_IN_OBJECTS * JSTaggedValue::TaggedTypeSize()); in HWTEST_F_L0() 86 JSHandle<JSHClass> newFunCls(thread, newFun->GetJSHClass()); in HWTEST_F_L0() 98 JSHClass *cls = *newFunCls; in HWTEST_F_L0() 100 JSFunction::SIZE + JSHClass::DEFAULT_CAPACITY_OF_IN_OBJECTS * JSTaggedValue::TaggedTypeSize()); in HWTEST_F_L0() 120 JSHandle<JSHClass> newBoundFunCls(thread, newBoundFun->GetJSHClass()); in HWTEST_F_L0() 135 JSHandle<JSHClass> newPrimitiveCls(thread, newPrimitive->GetJSHClass()); in HWTEST_F_L0() 148 JSHandle<JSHClass> newLexicalEnvCls(thread, newLexicalEnv->GetClass()); in HWTEST_F_L0() 159 JSHandle<JSHClass> newJSArrayCl in HWTEST_F_L0() [all...] |
/arkcompiler/ets_runtime/ecmascript/compiler/ |
H A D | hcr_circuit_builder.h | 80 Int32And(Int32LSR(bitfield, Int32(JSHClass::CallableBit::START_BIT)), in IsCallableFromBitField() 81 Int32((1LU << JSHClass::CallableBit::SIZE) - 1)), in IsCallableFromBitField() 88 GateRef bitfieldOffset = IntPtr(JSHClass::BIT_FIELD_OFFSET); in IsCallable() 95 GateRef bitfield = LoadConstOffset(VariableType::INT32(), hClass, JSHClass::BIT_FIELD_OFFSET); in IsProtoTypeHClass() 97 Int32(JSHClass::IsPrototypeBit::START_BIT)), in IsProtoTypeHClass() 98 Int32((1LU << JSHClass::IsPrototypeBit::SIZE) - 1))); in IsProtoTypeHClass() 190 return LoadConstOffset(VariableType::JS_POINTER(), hclass, JSHClass::PROTOTYPE_OFFSET); in LoadPrototype() 212 GateRef bitfield = Load(VariableType::INT32(), hClass, IntPtr(JSHClass::BIT_FIELD1_OFFSET)); in GetObjectSizeFromHClass() 214 Int32(JSHClass::ObjectSizeInWordsBits::START_BIT)), in GetObjectSizeFromHClass() 215 Int32((1LU << JSHClass in GetObjectSizeFromHClass() [all...] |
/arkcompiler/ets_runtime/ecmascript/compiler/pgo_type/ |
H A D | pgo_hclass_generator.cpp | 54 JSHandle<JSHClass> rootHClass; in GenerateHClass() 88 JSHandle<JSHClass> rootHClass = CreateRootHClass(rootType, rootHClassDesc, maxNumOfProps, false); in GenerateIHClass() 144 JSHandle<JSHClass> PGOHClassGenerator::CreateRootPHClass( in CreateRootPHClass() 147 JSHandle<JSHClass> rootHClass = CreateRootHClass(rootType, layoutDesc, maxNum, false); in CreateRootPHClass() 156 JSHandle<JSHClass> PGOHClassGenerator::CreateRootCHClass( in CreateRootCHClass() 159 JSHandle<JSHClass> rootHClass = CreateRootHClass(rootType, layoutDesc, maxNum, false); in CreateRootCHClass() 166 JSHandle<JSHClass> PGOHClassGenerator::CreateRootHClass( in CreateRootHClass() 171 JSHandle<JSHClass> rootHClass(thread, hclassValue); in CreateRootHClass() 173 rootHClass = JSHClass::CreateRootHClassFromPGO(thread, layoutDesc, maxNum, isCache); in CreateRootHClass() 180 const JSHandle<JSHClass> in CreateChildHClass() [all...] |
H A D | pgo_hclass_generator.h | 39 JSHandle<JSHClass> CreateRootPHClass( 41 JSHandle<JSHClass> CreateRootCHClass( 43 JSHandle<JSHClass> CreateRootHClass( 46 void CreateChildHClass(ProfileType rootType, const PGOHClassTreeDesc *desc, const JSHandle<JSHClass> &parent,
|
/arkcompiler/ets_runtime/ecmascript/base/ |
H A D | typed_array_helper-inl.h | 40 JSHandle<JSHClass> TypedArrayHelper::GetOnHeapHclass##Type(JSThread *thread, JSHClass* objHclass) \ 42 JSHandle<JSHClass> result; \ 44 if (*JSHandle<JSHClass>(env->Get##Type##RootHclass()) == (objHclass)) { \ 45 return JSHandle<JSHClass>(env->Get##Type##RootHclassOnHeap()); \ 47 result = JSHClass::Clone((thread), JSHandle<JSHClass>((thread), (objHclass))); \ 57 JSHandle<JSHClass> TypedArrayHelper::GetNotOnHeapHclass##Type(JSThread *thread, JSHClass* objHclass) \ 59 JSHandle<JSHClass> resul [all...] |
H A D | typed_array_helper.h | 89 inline static JSHandle<JSHClass> GetOnHeapHclassFromType( 91 inline static JSHandle<JSHClass> GetNotOnHeapHclassFromType( 93 inline static JSHandle<JSHClass> GetSharedOnHeapHclassFromType( 95 inline static JSHandle<JSHClass> GetSharedNotOnHeapHclassFromType( 109 inline static JSHandle<JSHClass> GetOnHeapHclass##Type(JSThread *thread, JSHClass* objHclass); 115 inline static JSHandle<JSHClass> GetNotOnHeapHclass##Type(JSThread *thread, JSHClass* objHclass);
|
/arkcompiler/ets_runtime/ecmascript/builtins/tests/ |
H A D | builtins_sharedobject_test.cpp | 44 JSHClass *hclass = sharedObjectPrototype->GetTaggedObject()->GetClass(); in HWTEST_F_L0() 57 JSHClass *ctorHClass = ctor->GetTaggedObject()->GetClass(); in HWTEST_F_L0() 67 JSHClass *protoHClass = proto.GetTaggedObject()->GetClass(); in HWTEST_F_L0() 76 JSHClass *sObjProtoHClass = sObjProto.GetTaggedObject()->GetClass(); in HWTEST_F_L0() 94 JSHClass *ctorHClass = ctor->GetTaggedObject()->GetClass(); in HWTEST_F_L0() 100 JSHandle<JSHClass> normalFunctionClass(env->GetSFunctionClassWithoutProto()); in HWTEST_F_L0() 116 JSHClass *hclass = method->GetTaggedObject()->GetClass(); in HWTEST_F_L0() 142 method1, JSHandle<JSHClass>::Cast(env->GetSFunctionClassWithoutProto())); in HWTEST_F_L0()
|