/arkcompiler/ets_runtime/ecmascript/ |
H A D | js_hclass.cpp | 285 JSHClass *newClass = jshclass->FindTransitions(key.GetTaggedValue(), metadata, rep); in AddProperty() local 286 if (newClass != nullptr) { in AddProperty() 288 if (newClass->IsTS()) { in AddProperty() 289 newClass->SetPrototype(thread, jshclass->GetPrototype()); in AddProperty() 292 RestoreElementsKindToGeneric(newClass); in AddProperty() 293 obj->SynchronizedSetClass(thread, newClass); in AddProperty() 296 JSHandle<JSHClass> newHClass = JSHandle<JSHClass>(thread, newClass); in AddProperty() 297 if (newClass->IsTS() && newClass->IsPrototype()) { in AddProperty() 326 auto *newClass in TransitionExtension() local 356 auto *newClass = jshclass->FindProtoTransitions(key.GetTaggedValue(), proto.GetTaggedValue()); TransitionProto() local 455 auto *newClass = jshclass->FindProtoTransitions(key.GetTaggedValue(), proto.GetTaggedValue()); TransProtoWithoutLayout() local 479 JSHandle<JSHClass> newClass = JSHClass::TransitionProto(thread, hclass, proto, isChangeProto); SetPrototypeWithNotification() local 491 auto newClass = SetPrototypeWithNotification(thread, hclass, proto, isChangeProto); SetPrototypeTransition() local [all...] |
H A D | shared_object_factory.cpp | 100 auto *newClass = static_cast<JSHClass *>(sHeap_->AllocateNonMovableOrHugeObject(thread_, hclass, classSize)); in NewSEcmaHClass() local 101 newClass->Initialize(thread_, size, type, inlinedProps, thread_->GlobalConstants()->GetHandledEmptySLayoutInfo()); in NewSEcmaHClass() 102 return JSHandle<JSHClass>(thread_, newClass); in NewSEcmaHClass() 111 auto *newClass = static_cast<JSHClass *>(sHeap_->AllocateNonMovableOrHugeObject( in NewSEcmaHClass() local 113 newClass->Initialize(thread_, size, type, inlinedProps, layout); in NewSEcmaHClass() 114 JSHandle<JSHClass> hclass(thread_, newClass); in NewSEcmaHClass() 129 auto *newClass = static_cast<JSHClass *>(sHeap_->AllocateNonMovableOrHugeObject(thread_, in NewSEcmaHClassDictMode() local 131 newClass->Initialize(thread_, size, type, inlinedProps, thread_->GlobalConstants()->GetHandledEmptySLayoutInfo()); in NewSEcmaHClassDictMode() 132 JSHandle<JSHClass> hclass(thread_, newClass); in NewSEcmaHClassDictMode() 147 auto *newClass in NewSEcmaHClassClass() local 157 auto *newClass = static_cast<JSHClass *>(sHeap_->AllocateReadOnlyOrHugeObject(thread_, hclass, classSize)); NewSEcmaReadOnlyHClass() local [all...] |
H A D | js_hclass-inl.h | 379 // Add newClass to old hclass's transitions. in AddPropertyToNewHClass() 388 JSHClass *newClass = jshclass->FindTransitions( in SetPropertyOfObjHClass() local 390 if (newClass != nullptr) { in SetPropertyOfObjHClass() 391 newClass->SetPrototype(thread, jshclass->GetPrototype()); in SetPropertyOfObjHClass() 392 return JSHandle<JSHClass>(thread, newClass); in SetPropertyOfObjHClass()
|
H A D | object_factory.cpp | 140 auto *newClass = static_cast<JSHClass *>(heap_->AllocateClassClass(hclass, classSize)); in NewEcmaHClassClass() local 141 newClass->Initialize(thread_, size, type, 0); in NewEcmaHClassClass() 143 return JSHandle<JSHClass>(thread_, newClass); in NewEcmaHClassClass() 158 auto *newClass = static_cast<JSHClass *>(heap_->AllocateNonMovableOrHugeObject(hclass, classSize)); in NewEcmaHClass() local 159 newClass->Initialize(thread_, size, type, inlinedProps); in NewEcmaHClass() 161 return JSHandle<JSHClass>(thread_, newClass); in NewEcmaHClass() 170 auto *newClass = static_cast<JSHClass *>(heap_->AllocateNonMovableOrHugeObject( in NewEcmaHClass() local 172 newClass->Initialize(thread_, size, type, inlinedProps, layout); in NewEcmaHClass() 173 JSHandle<JSHClass> hclass(thread_, newClass); in NewEcmaHClass() 188 auto *newClass in NewEcmaReadOnlyHClass() local 473 auto *newClass = static_cast<JSHClass *>(heap_->AllocateNonMovableOrHugeObject( NewEcmaHClass() local 1748 JSHandle<JSHClass> newClass = JSHClass::TransProtoWithoutLayout(thread_, hclass, protoValue); OrdinaryNewJSObjectCreate() local [all...] |
H A D | js_function.cpp | 182 JSHandle<JSHClass> newClass = JSHClass::SetPrototypeWithNotification(thread, hclass, value); in PrototypeSetter() local 183 func->SetProtoOrHClass(thread, newClass); in PrototypeSetter()
|
H A D | js_object.cpp | 1886 auto newClass = JSHClass::Clone(thread, hclass); in FreezeSharedObject() local 1897 newClass->SetLayout(thread, newLayoutInfo); in FreezeSharedObject() 1898 obj->SynchronizedSetClass(thread, *newClass); in FreezeSharedObject()
|
/arkcompiler/ets_runtime/ecmascript/tests/ |
H A D | js_hclass_test.cpp | 345 JSHandle<JSHClass> newClass = JSHClass::TransitionProto(thread, objClass, funcPrototype); in HWTEST_F_L0() local 346 EXPECT_EQ(newClass->GetPrototype(), funcPrototype.GetTaggedValue()); in HWTEST_F_L0() 395 JSHandle<JSHClass> newClass(thread, Obj2->GetClass()); in HWTEST_F_L0() 396 EXPECT_TRUE(newClass->GetObjectSize() < obj2Class->GetObjectSize()); in HWTEST_F_L0() 397 EXPECT_EQ(newClass->NumberOfProps(), 0U); in HWTEST_F_L0() 398 EXPECT_TRUE(newClass->IsDictionaryMode()); in HWTEST_F_L0() 399 EXPECT_TRUE(newClass->IsPrototype()); in HWTEST_F_L0()
|
/arkcompiler/ets_frontend/ets2panda/checker/ets/ |
H A D | aliveAnalyzer.cpp | 360 void AliveAnalyzer::AnalyzeNewClass(const ir::ETSNewClassInstanceExpression *newClass) in AnalyzeNewClass() argument 362 for (const auto *it : newClass->GetArguments()) { in AnalyzeNewClass() 366 if (newClass->ClassDefinition() != nullptr) { in AnalyzeNewClass() 367 AnalyzeNode(newClass->ClassDefinition()); in AnalyzeNewClass()
|
H A D | aliveAnalyzer.h | 75 void AnalyzeNewClass(const ir::ETSNewClassInstanceExpression *newClass);
|
H A D | assignAnalyzer.h | 135 void AnalyzeNewClass(const ir::ETSNewClassInstanceExpression *newClass);
|
H A D | assignAnalyzer.cpp | 1155 void AssignAnalyzer::AnalyzeNewClass(const ir::ETSNewClassInstanceExpression *newClass) in AnalyzeNewClass() argument 1157 AnalyzeExpr(newClass->GetTypeRef()); in AnalyzeNewClass() 1158 AnalyzeExprs(newClass->GetArguments()); in AnalyzeNewClass() 1159 AnalyzeNode(newClass->ClassDefinition()); in AnalyzeNewClass()
|
/arkcompiler/runtime_core/static_core/runtime/include/ |
H A D | object_accessor-inl.h | 471 inline void ObjectAccessor::SetClass(ObjectHeader *obj, BaseClass *newClass) in SetClass() argument 481 obj->SetClass(newClass); in SetClass() 485 ASSERT(newClass->GetManagedObject() != nullptr); in SetClass() 486 barrierSet->PostBarrier(ToVoidPtr(ToUintPtr(obj)), 0, newClass->GetManagedObject()); in SetClass()
|
H A D | object_accessor.h | 131 static void SetClass(ObjectHeader *obj, BaseClass *newClass);
|
/arkcompiler/ets_runtime/ecmascript/compiler/aot_snapshot/ |
H A D | snapshot_constantpool_data.cpp | 88 JSHClass *newClass = JSHClass::Cast(maybeHClass.GetTaggedObject()); in TryGetHClassFromCached() local 105 newClass = newClass->FindTransitions(key.GetTaggedValue(), metadata, rep); in TryGetHClassFromCached() 106 if (newClass == nullptr) { in TryGetHClassFromCached() 111 auto result = JSHandle<JSHClass>(thread_, newClass); in TryGetHClassFromCached()
|
/arkcompiler/ets_runtime/ecmascript/compiler/ |
H A D | type_info_accessors.cpp | 1400 JSTaggedValue newClass = parent_.ptManager_->QueryHClass(type.first, type.second); in GetHClass() local 1401 if (!newClass.IsJSHClass()) { in GetHClass() 1404 if (oldClass->GetInlinedProperties() != JSHClass::Cast(newClass.GetTaggedObject())->GetInlinedProperties()) { in GetHClass() 1407 return newClass; in GetHClass() 1422 JSHClass *newClass = sampleType->GetReceiver(); in GetHClass() local 1423 if (newClass == nullptr) { in GetHClass() 1429 if (oldClass->GetInlinedProperties() != newClass->GetInlinedProperties()) { in GetHClass() 1432 return JSTaggedValue(newClass); in GetHClass()
|
H A D | circuit_builder.cpp | 1295 GateRef newClass = CallNGCRuntime(glue, RTSTUB_ID(JSHClassFindProtoTransitions), Gate::InvalidGateRef, in TransProtoWithoutLayout() local 1299 BRANCH_CIR2(IntPtrEqual(TaggedCastToIntPtr(newClass), IntPtr(0)), &undef, &find); in TransProtoWithoutLayout() 1302 result = newClass; in TransProtoWithoutLayout() 1327 GateRef newClass = TransProtoWithoutLayout(glue, hClass, proto); in OrdinaryNewJSObjectCreate() local 1330 BRANCH_CIR2(TaggedIsException(newClass), &exception, &noexception); in OrdinaryNewJSObjectCreate() 1338 GateRef newObj = newBuilder.NewJSObject(glue, newClass); in OrdinaryNewJSObjectCreate()
|
H A D | typed_bytecode_lowering.cpp | 2345 JSHClass *newClass = JSHClass::Cast(hclassVal.GetTaggedObject()); in LowerCreateObjectWithBuffer() local 2353 auto layout = LayoutInfo::Cast(newClass->GetLayout().GetTaggedObject()); in LowerCreateObjectWithBuffer() 2354 for (uint32_t i = 0; i < newClass->GetInlinedProperties(); i++) { in LowerCreateObjectWithBuffer() 2371 auto size = newClass->GetObjectSize(); in LowerCreateObjectWithBuffer() 2375 valueIn.emplace_back(builder_.Int64(JSTaggedValue(newClass).GetRawData())); in LowerCreateObjectWithBuffer() 2377 for (uint32_t i = 0; i < newClass->GetInlinedProperties(); i++) { in LowerCreateObjectWithBuffer() 2392 valueIn.emplace_back(builder_.Int32(newClass->GetInlinedPropertiesOffset(i))); in LowerCreateObjectWithBuffer()
|
H A D | stub_builder.cpp | 1328 GateRef newClass = FindTransitions(glue, hclass, key, metaData, value); in JSHClassAddProperty() local 1331 BRANCH(Equal(newClass, Undefined()), ¬FindHClass, &findHClass); in JSHClassAddProperty() 1334 GateRef isTSHClass = IsTSHClass(newClass); in JSHClassAddProperty() 1341 StorePrototype(glue, newClass, prototype); in JSHClassAddProperty() 1346 RestoreElementsKindToGeneric(glue, newClass); in JSHClassAddProperty() 1347 StoreHClass(glue, receiver, newClass); in JSHClassAddProperty() 1352 GateRef updateCondition = LogicAndBuilder(env).And(isTSHClass).And(IsProtoTypeHClass(newClass)).Done(); in JSHClassAddProperty() 1358 { hclass, newClass, key }); in JSHClassAddProperty() 1365 NotifyHClassChanged(glue, hclass, newClass); in JSHClassAddProperty() 1371 CallRuntime(glue, RTSTUB_ID(TryRestoreElementsKind), { receiver, newClass }); in JSHClassAddProperty() [all...] |