| /arkcompiler/runtime_core/static_core/runtime/mem/refstorage/ |
| D | reference_storage.h | 20 #include "runtime/mem/refstorage/reference.h" 27 class Reference; variable 48 static Reference::ObjectType GetObjectType(const Reference *ref); 50 [[nodiscard]] static Reference *NewStackRef(ObjectHeader **objectPtr) in NewStackRef() 56 return Reference::Create(ToUintPtr(objectPtr), Reference::ObjectType::STACK); in NewStackRef() 59 …[[nodiscard]] PANDA_PUBLIC_API Reference *NewRef(const ObjectHeader *object, Reference::ObjectType… 61 void RemoveRef(const Reference *ref); 63 [[nodiscard]] PANDA_PUBLIC_API ObjectHeader *GetObject(const Reference *ref); 74 …* Pops the last frame, frees all local references in this frame and moves given reference to the p… 75 …* return it's new reference. Should be NULL if you don't want to return any value to previous fram… [all …]
|
| D | global_object_storage.cpp | 26 #include "reference.h" 46 bool GlobalObjectStorage::IsValidGlobalRef(const Reference *ref) const in IsValidGlobalRef() 49 Reference::ObjectType type = Reference::GetType(ref); in IsValidGlobalRef() 51 if (type == Reference::ObjectType::GLOBAL) { in IsValidGlobalRef() 55 } else if (type == Reference::ObjectType::WEAK) { in IsValidGlobalRef() 67 Reference *GlobalObjectStorage::Add(const ObjectHeader *object, Reference::ObjectType type) const in Add() 73 Reference *ref = nullptr; in Add() 74 if (type == Reference::ObjectType::GLOBAL) { in Add() 76 } else if (type == Reference::ObjectType::WEAK) { in Add() 82 ref = Reference::SetType(ref, type); in Add() [all …]
|
| D | global_object_storage.h | 29 #include "reference.h" 50 /// Check whether ref is a valid global reference or not. 51 bool IsValidGlobalRef(const Reference *ref) const; 54 PANDA_PUBLIC_API Reference *Add(const ObjectHeader *object, Reference::ObjectType type) const; 56 …/// Get stored object associated with given reference. Reference should be returned on Add method … 57 ObjectHeader *Get(const Reference *reference) const in Get() argument 59 if (reference == nullptr) { in Get() 62 auto type = reference->GetType(); in Get() 63 reference = Reference::GetRefWithoutType(reference); in Get() 66 if (type == Reference::ObjectType::GLOBAL) { in Get() [all …]
|
| D | reference.h | 33 class Reference { 55 DEFAULT_COPY_SEMANTIC(Reference); 56 DEFAULT_MOVE_SEMANTIC(Reference); 57 ~Reference() = delete; 58 Reference() = delete; 92 static Reference *CreateWithoutType(uintptr_t addr) in CreateWithoutType() 95 return reinterpret_cast<Reference *>(addr); in CreateWithoutType() 98 static Reference *Create(uintptr_t addr, ObjectType type) in Create() 104 static ObjectType GetType(const Reference *ref) in GetType() 110 static Reference *SetType(Reference *ref, ObjectType type) in SetType() [all …]
|
| D | reference_storage.cpp | 74 bool ReferenceStorage::IsValidRef(const Reference *ref) in IsValidRef() 77 auto type = Reference::GetType(ref); in IsValidRef() 80 if (type == mem::Reference::ObjectType::STACK) { in IsValidRef() 82 …} else if (type == mem::Reference::ObjectType::GLOBAL || type == mem::Reference::ObjectType::WEAK)… in IsValidRef() 86 auto refWithoutType = Reference::GetRefWithoutType(ref); in IsValidRef() 94 Reference::ObjectType ReferenceStorage::GetObjectType(const Reference *ref) in GetObjectType() 100 Reference *ReferenceStorage::NewRef(const ObjectHeader *object, Reference::ObjectType type) in NewRef() 102 ASSERT(type != Reference::ObjectType::STACK); in NewRef() 108 Reference *ref = nullptr; in NewRef() 109 if (type == Reference::ObjectType::GLOBAL || type == Reference::ObjectType::WEAK) { in NewRef() [all …]
|
| D | ref_block.cpp | 31 Reference *RefBlock::AddRef(const ObjectHeader *object, Reference::ObjectType type) in AddRef() 36 auto *ref = reinterpret_cast<Reference *>(&refs_[index]); in AddRef() 37 ref = Reference::SetType(ref, type); in AddRef() 41 void RefBlock::Remove(const Reference *ref) in Remove() 44 ref = Reference::GetRefWithoutType(ref); in Remove() 99 PandaVector<Reference *> RefBlock::GetAllReferencesInFrame() in GetAllReferencesInFrame() 101 PandaVector<Reference *> refs; in GetAllReferencesInFrame() 108 auto *currentRef = reinterpret_cast<Reference *>(&block->refs_[index]); in GetAllReferencesInFrame()
|
| /arkcompiler/runtime_core/static_core/tests/test-lists/test262/ |
| D | test262-ignored-AOT-FULL.txt | 31 language/expressions/compound-assignment/left-hand-side-private-reference-accessor-property-add.js 32 language/expressions/compound-assignment/left-hand-side-private-reference-accessor-property-bitand.… 33 language/expressions/compound-assignment/left-hand-side-private-reference-accessor-property-bitor.js 34 language/expressions/compound-assignment/left-hand-side-private-reference-accessor-property-bitxor.… 35 language/expressions/compound-assignment/left-hand-side-private-reference-accessor-property-div.js 36 language/expressions/compound-assignment/left-hand-side-private-reference-accessor-property-exp.js 37 language/expressions/compound-assignment/left-hand-side-private-reference-accessor-property-lshift.… 38 language/expressions/compound-assignment/left-hand-side-private-reference-accessor-property-mod.js 39 language/expressions/compound-assignment/left-hand-side-private-reference-accessor-property-mult.js 40 language/expressions/compound-assignment/left-hand-side-private-reference-accessor-property-rshift.… [all …]
|
| /arkcompiler/runtime_core/static_core/plugins/ets/stdlib/std/core/ |
| D | WeakRef.sts | 19 * WeakRef - weak reference to object. 20 * A weak reference to an object is a reference that does not prevent the object 24 * @tparam T Object type for weak reference 27 // Reference to target object 31 * Constructs weak reference object referring to a given target object 33 * @param target - target object for weak reference
|
| D | FinalizableWeakRef.sts | 19 * FinalizableWeakRef - weak reference to object with finalizer. 23 * A weak reference to an object is a reference that does not prevent the object 27 * @tparam T Object type for weak reference 31 * Constructs weak reference object referring to a given target object 33 * @param target - target object for weak reference 39 // Reference to target object
|
| /arkcompiler/runtime_core/static_core/verification/ |
| D | verification.yaml | 69 - reference 110 - reference 119 - reference 137 - reference 155 - reference 171 - reference 187 - reference 201 - reference 216 - reference 230 - reference [all …]
|
| /arkcompiler/runtime_core/static_core/runtime/mem/gc/reference-processor/ |
| D | reference_processor.h | 31 class Reference; variable 52 …* True if current object is Reference and it's referent is not marked yet (maybe need to process t… 53 …* Predicate checks GC-specific conditions on this reference (i.e. if we need to skip this referenc… 60 …* Save reference for future processing and handle it with GC point of view (mark needed fields, if… 61 …* Predicate checks if we should add this reference to the queue (e.g. don't process to many refs o… 65 …/// Save reference for future processing and handle it with GC point of view (traverse needed fiel… 89 virtual ark::mem::Reference *CollectClearedReferences() = 0; 91 virtual void ScheduleForEnqueue(Reference *clearedReferences) = 0; 94 virtual void Enqueue(ark::mem::Reference *clearedReferences) = 0;
|
| /arkcompiler/ets_frontend/ets2panda/test/ast/compiler/ets/ |
| D | unresolved_reference.sts | 40 /* @@? 28:13 Error TypeError: Unresolved reference b */ 41 /* @@? 28:13 Error TypeError: Unresolved reference b */ 42 /* @@? 16:13 Error TypeError: Unresolved reference b */ 43 /* @@? 20:13 Error TypeError: Unresolved reference b */ 44 /* @@? 24:18 Error TypeError: Unresolved reference b */ 45 /* @@? 32:17 Error TypeError: Unresolved reference b */
|
| D | UnresolvedReferenceInCamparison.sts | 21 /* @@? 17:9 Error TypeError: Unresolved reference a */ 22 /* @@? 17:13 Error TypeError: Unresolved reference b */ 23 /* @@? 18:5 Error TypeError: Unresolved reference hehe */
|
| /arkcompiler/runtime_core/static_core/plugins/ets/runtime/mem/ |
| D | ets_reference.h | 20 #include "runtime/mem/refstorage/reference.h" 34 using EtsObjectType = mem::Reference::ObjectType; 56 static mem::Reference *CastToReference(EtsReference *etsRef) in CastToReference() 58 return reinterpret_cast<mem::Reference *>(etsRef); in CastToReference() 61 static EtsReference *CastFromReference(mem::Reference *ref) in CastFromReference() 67 const mem::Reference *GetReference() const in GetReference() 69 return reinterpret_cast<const mem::Reference *>(this); in GetReference() 110 … mem::Reference *ref = mem::ReferenceStorage::NewStackRef(reinterpret_cast<ObjectHeader **>(obj)); in NewEtsStackRef() 116 mem::Reference *ref = NewRef(obj->GetCoreType(), objType); in NewEtsRef()
|
| /arkcompiler/runtime_core/static_core/verification/util/ |
| D | optional_ref.h | 38 OptionalConstRef(const T &reference) : value_ {const_cast<T *>(&reference)} {} in OptionalConstRef() 40 … OptionalConstRef(std::reference_wrapper<const T> reference) : OptionalConstRef(reference.get()) {} in OptionalConstRef() 106 OptionalRef(T &reference) : OptionalConstRef<T>(&reference) {} in OptionalRef() 108 OptionalRef(std::reference_wrapper<T> reference) : OptionalRef(reference.get()) {} in OptionalRef()
|
| /arkcompiler/runtime_core/static_core/plugins/ets/tests/ets-templates/06.contexts_and_conversions/01.assignment-like_contexts/ |
| D | ref_widening.sts | 19 A widening reference conversion exists from any reference type S to any reference 28 if (src !== dst ) { // reference equality
|
| /arkcompiler/runtime_core/static_core/runtime/mem/ |
| D | vm_handle-inl.h | 32 inline VMHandle<T>::VMHandle(mem::GlobalObjectStorage *globalStorage, mem::Reference *reference) in VMHandle() argument 33 : HandleBase(globalStorage->GetAddressForRef(reference)) in VMHandle() 35 ASSERT(reference != nullptr); in VMHandle()
|
| D | object_helpers.h | 61 * @param from_object object from which we found object by reference 111 /// Traverse all kinds of object_header and call obj_visitor for each reference field. 116 * Traverse all kinds of object_header and call handler for each reference field. 117 … * The handler accepts the object, the reference value, offset to the reference in the object and 131 * Update a single reference field in the object to the moved value. 150 /// Traverse all kinds of object_header and call obj_visitor for each reference field. 155 * Traverse all kinds of object_header and call handler for each reference field. 156 … * The handler accepts the object, the reference value, offset to the reference in the object and 170 * Update a single reference field in the object to the moved value.
|
| /arkcompiler/runtime_core/static_core/runtime/coroutines/ |
| D | coroutine_events.h | 19 #include "runtime/mem/refstorage/reference.h" 128 …* @param promise A weak reference (from global storage) to the language-dependent promise object t… 131 explicit CompletionEvent(mem::Reference *promise, CoroutineManager *coroManager) in CompletionEvent() 137 mem::Reference *ReleasePromise() in ReleasePromise() 142 void SetPromise(mem::Reference *promise) in SetPromise() 149 mem::Reference *promise_ = nullptr;
|
| /arkcompiler/ets_frontend/ets2panda/checker/ets/ |
| D | conversion.cpp | 122 // 11.1.6. Narrowing Reference Conversion in IsAllowedNarrowingReferenceConversion() 123 …// A narrowing reference conversion exists from reference type S to a reference type T if all of t… in IsAllowedNarrowingReferenceConversion() 154 … // array of components of type TC; and a narrowing reference conversion exists from SC to TC. in IsAllowedNarrowingReferenceConversion() 167 …// 9. S is a type variable, and a narrowing reference conversion exists from the upper bound of S … in IsAllowedNarrowingReferenceConversion() 170 …// 10. T is a type variable, and either a widening reference conversion or a narrowing reference c… in IsAllowedNarrowingReferenceConversion() 174 …/ 11. S is an intersection type S1 & … & Sn, and for all i (1 ≤ i ≤ n), either a widening reference in IsAllowedNarrowingReferenceConversion() 176 // narrowing reference conversion exists from Si to T. in IsAllowedNarrowingReferenceConversion() 179 …/ 12. T is an intersection type T1 & … & Tn, and for all i (1 ≤ i ≤ n), either a widening reference in IsAllowedNarrowingReferenceConversion() 181 // narrowing reference conversion exists from S to Ti. in IsAllowedNarrowingReferenceConversion() 193 // The unchecked narrowing reference conversions are as follows: in IsUncheckedNarrowingReferenceConversion() [all …]
|
| /arkcompiler/runtime_core/static_core/plugins/ets/compiler/optimizer/ir_builder/ |
| D | ets_inst_builder.cpp | 38 …DataType::REFERENCE, pc, TypeIdMixin {TypeIdMixin::MEM_PROMISE_CLASS_ID, GetGraph()->GetMethod()},… in BuildLaunch() 61 case DataType::REFERENCE: in GetIntrinsicId() 90 if (type != DataType::REFERENCE) { in BuildLdObjByName() 103 …graph_->CreateInstNullCheck(DataType::REFERENCE, pc, GetDefinition(bcInst->GetVReg(0)), saveState); in BuildLdObjByName() 106 intrinsic->AddInputType(DataType::REFERENCE); in BuildLdObjByName() 131 case DataType::REFERENCE: in ExtractIntrinsicIdByType() 165 intrinsic->AddInputType(DataType::REFERENCE); in CreateStObjByNameIntrinsic() 186 if (type != DataType::REFERENCE) { in BuildStObjByName() 201 …graph_->CreateInstNullCheck(DataType::REFERENCE, pc, GetDefinition(bcInst->GetVReg(0)), saveState); in BuildStObjByName() 228 DataType::REFERENCE, ConditionCode::CC_EQ); in BuildIsUndefined() [all …]
|
| /arkcompiler/runtime_core/static_core/libpandafile/templates/ |
| D | type.h.erb | 36 static_assert(TypeId::I64 < TypeId::REFERENCE); 41 static_assert(TypeId::U64 < TypeId::REFERENCE); 45 static_assert(TypeId::F64 < TypeId::REFERENCE); 54 return type_ != TypeId::REFERENCE; 58 return type_ == TypeId::REFERENCE; 153 case panda_file::Type::TypeId::REFERENCE: 192 return Type(panda_file::Type::TypeId::REFERENCE); 225 uint8_t refEncoding = Type(TypeId::REFERENCE).GetFieldEncoding(); 232 // It means the fieldEncoding is a reference type which refers to Class or ForeignClass 234 return Type(TypeId::REFERENCE);
|
| /arkcompiler/runtime_core/libpandafile/templates/ |
| D | type.h.erb | 34 static_assert(TypeId::I64 < TypeId::REFERENCE); 39 static_assert(TypeId::U64 < TypeId::REFERENCE); 43 static_assert(TypeId::F64 < TypeId::REFERENCE); 48 return type_ != TypeId::REFERENCE; 52 return type_ == TypeId::REFERENCE; 147 case panda_file::Type::TypeId::REFERENCE: 186 return Type(panda_file::Type::TypeId::REFERENCE); 219 uint8_t ref_encoding = Type(TypeId::REFERENCE).GetFieldEncoding(); 226 // It means the field_encoding is a reference type which refers to Class or ForeignClass 228 return Type(TypeId::REFERENCE);
|
| /arkcompiler/ets_frontend/ets2panda/test/parser/ets/ |
| D | cast_expressions.sts | 39 // Casting to reference type 68 // Casting to reference type 97 // Casting to reference type 125 // Casting to reference type 152 // Casting to reference type 178 // Casting to reference type 203 // Casting to reference type 221 // Casting to reference type
|
| /arkcompiler/runtime_core/static_core/plugins/ets/tests/ets-templates/09.classes/05.field_declarations/03.field_initialization/ |
| D | non_static_field_initialization_reference.sts | 17 desc: Static field 'f' have reference in static variable. 18 assert: For a reference to a non-static field f declared in class or interface C, it is a compile-t…
|