/arkcompiler/ets_runtime/ecmascript/ |
H A D | elements.cpp | 95 ElementsKind Elements::MergeElementsKind(ElementsKind curKind, ElementsKind newKind) in MergeElementsKind() argument 97 auto result = ElementsKind(static_cast<uint8_t>(curKind) | static_cast<uint8_t>(newKind)); in MergeElementsKind() 148 const ElementsKind newKind, bool needCOW) in HandleIntKindMigration() 150 if (IsStringOrNoneOrHole(newKind)) { in HandleIntKindMigration() 153 } else if (newKind == ElementsKind::NUMBER || newKind == ElementsKind::HOLE_NUMBER) { in HandleIntKindMigration() 171 const ElementsKind newKind, bool needCOW) in HandleNumberKindMigration() 173 if (IsStringOrNoneOrHole(newKind)) { in HandleNumberKindMigration() 176 } else if (newKind == ElementsKind::INT || newKind in HandleNumberKindMigration() 147 HandleIntKindMigration(const JSThread *thread, const JSHandle<JSObject> &object, const ElementsKind newKind, bool needCOW) HandleIntKindMigration() argument 170 HandleNumberKindMigration(const JSThread *thread, const JSHandle<JSObject> &object, const ElementsKind newKind, bool needCOW) HandleNumberKindMigration() argument 181 HandleOtherKindMigration(const JSThread *thread, const JSHandle<JSObject> &object, const ElementsKind newKind, bool needCOW) HandleOtherKindMigration() argument 193 MigrateArrayWithKind(const JSThread *thread, const JSHandle<JSObject> &object, const ElementsKind oldKind, const ElementsKind newKind) MigrateArrayWithKind() argument [all...] |
H A D | elements.h | 98 static ElementsKind MergeElementsKind(ElementsKind curKind, ElementsKind newKind); 102 const ElementsKind oldKind, const ElementsKind newKind); 107 const ElementsKind newKind, bool needCOW); 112 const ElementsKind newKind, bool needCOW); 114 const ElementsKind newKind, bool needCOW);
|
H A D | element_accessor-inl.h | 36 ElementsKind newKind = receiver->GetClass()->GetElementsKind(); in Set() local 38 Elements::MigrateArrayWithKind(thread, receiver, oldKind, newKind); in Set()
|
H A D | js_array.cpp | 262 ElementsKind newKind = ElementsKind::GENERIC; in SetCapacity() local 264 ElementsKind newKind = ElementsKind::NONE; in SetCapacity() local 268 newKind = Elements::ToElementsKind(val, newKind); in SetCapacity() 272 if (newKind == ElementsKind::NONE && oldElementsLength != 0) { in SetCapacity() 275 if (!JSHClass::TransitToElementsKindUncheck(thread, array, newKind)) { in SetCapacity() 278 } else if (newKind != oldKind) { in SetCapacity() 279 if (JSHClass::TransitToElementsKindUncheck(thread, array, newKind)) { in SetCapacity() 280 Elements::MigrateArrayWithKind(thread, array, oldKind, newKind); in SetCapacity()
|
H A D | js_hclass.cpp | 675 ElementsKind newKind) in TransitToElementsKindUncheck() 682 auto newKindIter = arrayHClassIndexMap.find(newKind); in TransitToElementsKindUncheck() 697 LOG_ECMA(FATAL) << "Unknown newKind: " << static_cast<int32_t>(newKind); in TransitToElementsKindUncheck() 703 ElementsKind newKind) in TransitToElementsKind() 710 newKind = Elements::MergeElementsKind(newKind, current); in TransitToElementsKind() 711 if (newKind == current) { in TransitToElementsKind() 716 TransitToElementsKindUncheck(thread, JSHandle<JSObject>(array), newKind); in TransitToElementsKind() 729 auto newKind in TransitToElementsKind() local 674 TransitToElementsKindUncheck(const JSThread *thread, const JSHandle<JSObject> &obj, ElementsKind newKind) TransitToElementsKindUncheck() argument 702 TransitToElementsKind(const JSThread *thread, const JSHandle<JSArray> &array, ElementsKind newKind) TransitToElementsKind() argument [all...] |
H A D | object_operator.cpp | 687 ElementsKind newKind = receiver->GetClass()->GetElementsKind(); in UpdateDataValue() local 688 // newKind != currentKind, we need to convert the whole array to the newKind. in UpdateDataValue() 689 Elements::MigrateArrayWithKind(thread_, receiver, oldKind, newKind); in UpdateDataValue() 888 ElementsKind newKind = receiver->GetClass()->GetElementsKind(); in AddProperty() local 893 if (receiver.GetTaggedValue().IsJSArray() && (newKind != oldKind)) { in AddProperty()
|
H A D | js_hclass.h | 474 const ElementsKind newKind); 478 ElementsKind newKind); 480 ElementsKind newKind = ElementsKind::NONE);
|
H A D | js_stable_array.cpp | 1496 ElementsKind newKind = thisObj->GetClass()->GetElementsKind(); 1497 Elements::MigrateArrayWithKind(thread, thisObj, oldKind, newKind);
|
/arkcompiler/ets_runtime/ecmascript/jspandafile/ |
H A D | literal_data_extractor.h | 50 ElementsKind *newKind = nullptr, JSHandle<JSTaggedValue> sendableEnv = JSHandle<JSTaggedValue>(), 55 ElementsKind *newKind = nullptr, JSHandle<JSTaggedValue> sendableEnv = JSHandle<JSTaggedValue>(),
|
H A D | literal_data_extractor.cpp | 520 ElementsKind *newKind, in GetDatasIgnoreTypeForClass() 533 thread, jsPandaFile, id, constpool, entryPoint, isLoadedAOT, entryIndexes, newKind, sendableEnv, classKind); in GetDatasIgnoreTypeForClass() 540 ElementsKind *newKind, in GetDatasIgnoreType() 560 &entryPoint, &entryIndexes, &index, isLoadedAOT, newKind, classKind, &sendableEnv] in GetDatasIgnoreType() 642 if (newKind != nullptr) { in GetDatasIgnoreType() 643 *newKind = Elements::ToElementsKind(jt, *newKind); in GetDatasIgnoreType() 516 GetDatasIgnoreTypeForClass(JSThread *thread, const JSPandaFile *jsPandaFile, EntityId id, JSHandle<ConstantPool> constpool, const CString &entryPoint, bool isLoadedAOT, JSHandle<AOTLiteralInfo> entryIndexes, ElementsKind *newKind, JSHandle<JSTaggedValue> sendableEnv, ClassKind classKind) GetDatasIgnoreTypeForClass() argument 536 GetDatasIgnoreType(JSThread *thread, const JSPandaFile *jsPandaFile, EntityId id, JSHandle<ConstantPool> constpool, const CString &entryPoint, bool isLoadedAOT, JSHandle<AOTLiteralInfo> entryIndexes, ElementsKind *newKind, JSHandle<JSTaggedValue> sendableEnv, ClassKind classKind) GetDatasIgnoreType() argument
|
H A D | program_object.h | 626 ElementsKind newKind = arr->GetClass()->GetElementsKind(); in GetLiteralFromCache() local 628 Elements::MigrateArrayWithKind(thread, receiver, oldKind, newKind); in GetLiteralFromCache()
|
/arkcompiler/ets_runtime/ecmascript/pgo_profiler/ |
H A D | pgo_profiler.h | 105 void UpdateTrackElementsKind(JSTaggedValue trackInfoVal, ElementsKind newKind);
|
H A D | pgo_profiler.cpp | 245 void PGOProfiler::UpdateTrackElementsKind(JSTaggedValue trackInfoVal, ElementsKind newKind) in UpdateTrackElementsKind() argument 250 if (Elements::IsGeneric(oldKind) || oldKind == newKind) { in UpdateTrackElementsKind() 253 auto mixKind = Elements::MergeElementsKind(oldKind, newKind); in UpdateTrackElementsKind()
|
/arkcompiler/ets_runtime/ecmascript/pgo_profiler/types/ |
H A D | pgo_profiler_type.h | 226 ProfileType::Kind newKind = type.GetProfileType().GetKind(); in CombineCallTargetType() local 231 ((oldKind != newKind) || (oldMethodId != newMethodId))) { in CombineCallTargetType()
|
/arkcompiler/ets_runtime/ecmascript/compiler/ |
H A D | stub_builder.cpp | 3782 GateRef newKind = TaggedToElementKind(value); in TransitToElementsKind() local 3783 newKind = Int32Or(newKind, kind); in TransitToElementsKind() 3784 newKind = Int32Or(newKind, elementsKind); in TransitToElementsKind() 3786 BRANCH(Int32Equal(elementsKind, newKind), &exit, &change); in TransitToElementsKind() 3789 CallRuntime(glue, RTSTUB_ID(UpdateHClassForElementsKind), { receiver, newKind }); in TransitToElementsKind() 3790 MigrateArrayWithKind(glue, receiver, elementsKind, newKind); in TransitToElementsKind() 9349 GateRef newKind = Int32(static_cast<int32_t>(ElementsKind::GENERIC)); in RestoreElementsKindToGeneric() local 9350 SetElementsKindToJSHClass(glue, jsHClass, newKind); in RestoreElementsKindToGeneric() 9695 MigrateArrayWithKind(GateRef glue, GateRef object, GateRef oldKind, GateRef newKind) MigrateArrayWithKind() argument [all...] |
H A D | typed_hcr_lowering.cpp | 3427 GateRef newKind = acc_.GetValueIn(gate, 2); // 2: index in LowerMigrateArrayWithKind() local 3434 .Or(builder_.Int32Equal(oldKind, newKind)) in LowerMigrateArrayWithKind() 3436 builder_.Int32Equal(newKind, builder_.Int32(static_cast<uint32_t>(ElementsKind::HOLE_INT))))) in LowerMigrateArrayWithKind() 3438 builder_.Int32Equal(newKind, builder_.Int32(static_cast<uint32_t>(ElementsKind::HOLE_NUMBER))))) in LowerMigrateArrayWithKind() 3450 BRANCH_CIR(builder_.ElementsKindIsHeapKind(newKind), in LowerMigrateArrayWithKind() 3460 BRANCH_CIR(builder_.ElementsKindIsNumOrHoleNum(newKind), &migrateToNumbersFromInt, &exit); in LowerMigrateArrayWithKind() 3478 BRANCH_CIR(builder_.ElementsKindIsHeapKind(newKind), in LowerMigrateArrayWithKind() 3483 BRANCH_CIR(builder_.ElementsKindIsHeapKind(newKind), &migrateToTaggedFromNum, &exit); in LowerMigrateArrayWithKind() 3493 BRANCH_CIR(builder_.ElementsKindIsIntOrHoleInt(newKind), &migrateToIntFromNum, &exit); in LowerMigrateArrayWithKind() 3505 BRANCH_CIR(builder_.ElementsKindIsIntOrHoleInt(newKind), in LowerMigrateArrayWithKind() [all...] |
H A D | stub_builder.h | 913 void MigrateArrayWithKind(GateRef glue, GateRef object, GateRef oldKind, GateRef newKind);
|
/arkcompiler/ets_runtime/ecmascript/builtins/ |
H A D | builtins_array.cpp | 98 ElementsKind newKind = ElementsKind::GENERIC; in ArrayConstructor() local 101 ElementsKind newKind = newTarget.GetTaggedValue() == arrayFunc.GetTaggedValue() ? in ArrayConstructor() 108 newKind = Elements::ToElementsKind(value.GetTaggedValue(), newKind); in ArrayConstructor() 118 JSHClass::TransitToElementsKind(thread, newArray, newKind); in ArrayConstructor()
|