/arkcompiler/runtime_core/libpandafile/ |
H A D | file_item_container.h | 58 ScalarValueItem *GetOrCreateIdValueItem(BaseItem *v); 155 std::unordered_map<BaseItem *, ValueItem *> *GetScalarValueMap() in GetScalarValueMap() 170 std::list<std::unique_ptr<BaseItem>> &GetItems() in GetItems() 175 const std::list<std::unique_ptr<BaseItem>> &GetItems() const in GetItems() 180 const std::vector<std::unique_ptr<BaseItem>> &GetForeigtems() in GetForeigtems() 185 BaseItem *GetEndItem() in GetEndItem() 251 class IndexItem : public BaseItem { 295 void UpdateItems(BaseItem *start, BaseItem *end) in UpdateItems() 375 class IndexHeaderItem : public BaseItem { [all...] |
H A D | pgo.h | 28 static std::string GetNameInfo(const std::unique_ptr<BaseItem> &item); 29 void MarkProfileItem(std::unique_ptr<BaseItem> &item, bool set_pgo) const; 31 void ProfileGuidedRelayout(std::list<std::unique_ptr<BaseItem>> &items);
|
H A D | pgo.cpp | 23 std::string ProfileOptimizer::GetNameInfo(const std::unique_ptr<BaseItem> &item) in GetNameInfo() 44 void ProfileOptimizer::MarkProfileItem(std::unique_ptr<BaseItem> &item, bool set_pgo) const in MarkProfileItem() 89 static bool cmp(const std::unique_ptr<BaseItem> &item1, const std::unique_ptr<BaseItem> &item2) in cmp() 102 void ProfileOptimizer::ProfileGuidedRelayout(std::list<std::unique_ptr<BaseItem>> &items) in ProfileGuidedRelayout()
|
H A D | file_item_container.cpp | 28 static_assert(std::is_base_of_v<BaseItem, T>); in Deduplicate() 85 explicit ItemData(BaseItem *item) : item_(item) in ItemData() 95 BaseItem *GetItem() const in GetItem() 130 BaseItem *item_; 224 ScalarValueItem *ItemContainer::GetOrCreateIdValueItem(BaseItem *v) in GetOrCreateIdValueItem() 296 [this, &debug_deduper, &line_number_program_deduper](BaseItem *param_item) { in DeduplicateCodeAndDebugInfo() 376 class_item->VisitMethods([&annotation_deduper, &value_deduper](BaseItem *param_item) { in DeduplicateAnnotations() 387 class_item->VisitFields([&annotation_deduper, &value_deduper](BaseItem *param_item) { in DeduplicateAnnotations() 409 static bool Compare(const std::unique_ptr<BaseItem> &item1, const std::unique_ptr<BaseItem> [all...] |
H A D | file_items.h | 173 class BaseItem { class in panda::panda_file::ClassTag::MethodTag::FieldTag::FunctionKind::ItemRank 175 using VisitorCallBack = std::function<bool(BaseItem *)>; 177 BaseItem() = default; 178 virtual ~BaseItem() = default; 180 DEFAULT_COPY_SEMANTIC(BaseItem); 181 DEFAULT_MOVE_SEMANTIC(BaseItem); 303 class IndexedItem : public BaseItem { 307 uint32_t GetIndex(const BaseItem *item) const in GetIndex() 314 bool HasIndex(const BaseItem *item) const in HasIndex() 319 void SetIndex(const BaseItem *star [all...] |
H A D | file_reader.h | 149 inline BaseItem *CreateGenericMethodItem(BaseClassItem *class_item, File::EntityId method_id) in CreateGenericMethodItem() 158 inline BaseItem *CreateGenericFieldItem(BaseClassItem *class_item, File::EntityId field_id) in CreateGenericFieldItem() 175 void UpdateCodeAndDebugInfoDependencies(const std::map<BaseItem *, File::EntityId> &reverse_done); 179 std::map<File::EntityId, BaseItem *> items_done_;
|
H A D | file_reader.cpp | 63 items_done_.insert({array_id, static_cast<BaseItem *>(item)}); in CreateLiteralArrayItem() 206 items_done_.insert({ann_id, static_cast<BaseItem *>(ann_item)}); in CreateAnnotationItem() 588 items_done_.insert({debug_info_id, static_cast<BaseItem *>(debug_info_item)}); in CreateDebugInfoItem() 695 items_done_.insert({method_id, static_cast<BaseItem *>(method_item)}); in CreateMethodItem() 765 items_done_.insert({field_id, static_cast<BaseItem *>(field_item)}); in CreateFieldItem() 854 items_done_.insert({method_id, static_cast<BaseItem *>(method_item)}); in CreateForeignMethodItem() 892 items_done_.insert({field_id, static_cast<BaseItem *>(field_item)}); in CreateForeignFieldItem() 907 items_done_.insert({class_id, static_cast<BaseItem *>(class_item)}); in CreateForeignClassItem() 943 items_done_.insert({class_id, static_cast<BaseItem *>(class_item)}); in CreateClassItem() 1324 void FileReader::UpdateCodeAndDebugInfoDependencies(const std::map<BaseItem *, Fil [all...] |
H A D | file_items.cpp | 109 static bool WriteIdTaggedValue(Writer *writer, Tag tag, BaseItem *item) in WriteIdTaggedValue() 179 std::string BaseItem::GetName() const in GetName()
|
/arkcompiler/runtime_core/static_core/libpandafile/ |
H A D | file_item_container.h | 64 ScalarValueItem *GetOrCreateIdValueItem(BaseItem *v); 160 std::unordered_map<BaseItem *, ValueItem *> *GetScalarValueMap() in GetScalarValueMap() 175 const std::list<std::unique_ptr<BaseItem>> &GetItems() const in GetItems() 180 const std::vector<std::unique_ptr<BaseItem>> &GetForeignItems() in GetForeignItems() 185 BaseItem *GetEndItem() in GetEndItem() 221 class IndexItem : public BaseItem { 260 void UpdateItems(BaseItem *start, BaseItem *end) in UpdateItems() 343 class RegionHeaderItem : public BaseItem { 371 void SetStart(BaseItem *ite [all...] |
H A D | pgo.h | 27 static std::string GetNameInfo(const std::unique_ptr<BaseItem> &item); 28 void MarkProfileItem(std::unique_ptr<BaseItem> &item, bool setPgo) const; 30 void ProfileGuidedRelayout(std::list<std::unique_ptr<BaseItem>> &items);
|
H A D | pgo.cpp | 22 std::string ProfileOptimizer::GetNameInfo(const std::unique_ptr<BaseItem> &item) in GetNameInfo() 41 void ProfileOptimizer::MarkProfileItem(std::unique_ptr<BaseItem> &item, bool setPgo) const in MarkProfileItem() 80 static bool Cmp(const std::unique_ptr<BaseItem> &item1, const std::unique_ptr<BaseItem> &item2) in Cmp() 93 void ProfileOptimizer::ProfileGuidedRelayout(std::list<std::unique_ptr<BaseItem>> &items) in ProfileGuidedRelayout()
|
H A D | file_reader.h | 67 const std::map<File::EntityId, BaseItem *> *GetItems() const in GetItems() 108 void InstUpdateId(CodeItem *codeItem, MethodItem *methodItem, std::map<BaseItem *, File::EntityId> &reverseDone); 165 inline BaseItem *CreateGenericMethodItem(BaseClassItem *classItem, File::EntityId methodId) in CreateGenericMethodItem() 174 inline BaseItem *CreateGenericFieldItem(BaseClassItem *classItem, File::EntityId fieldId) in CreateGenericFieldItem() 192 const std::map<BaseItem *, File::EntityId> &reverseDone); 193 void UpdateCodeAndDebugInfoDependencies(const std::map<BaseItem *, File::EntityId> &reverseDone); 197 std::map<File::EntityId, BaseItem *> itemsDone_;
|
H A D | file_items.h | 149 class BaseItem { class in ark::panda_file::ClassTag::MethodTag::FieldTag 151 using VisitorCallBack = std::function<bool(BaseItem *)>; 153 BaseItem() = default; 154 virtual ~BaseItem() = default; 156 DEFAULT_COPY_SEMANTIC(BaseItem); 157 DEFAULT_MOVE_SEMANTIC(BaseItem); 268 class IndexedItem : public BaseItem { 275 uint32_t GetIndex(const BaseItem *item) const in GetIndex() 282 bool HasIndex(const BaseItem *item) const in HasIndex() 287 void SetIndex(const BaseItem *star [all...] |
H A D | file_item_container.cpp | 30 static_assert(std::is_base_of_v<BaseItem, T>); in Deduplicate() 97 explicit ItemData(BaseItem *item) : item_(item) in ItemData() 107 BaseItem *GetItem() const in GetItem() 142 BaseItem *item_; 155 std::unordered_map<BaseItem *, BaseItem *> alreadyDedupedItems_; 236 ScalarValueItem *ItemContainer::GetOrCreateIdValueItem(BaseItem *v) in GetOrCreateIdValueItem() 327 classItem->VisitMethods([this, &debugDeduper, &lineNumberProgramDeduper, &codeDeduper](BaseItem *paramItem) { in DeduplicateCodeAndDebugInfo() 407 classItem->VisitMethods([&annotationDeduper, &valueDeduper](BaseItem *paramItem) { in DeduplicateAnnotations() 417 classItem->VisitFields([&annotationDeduper, &valueDeduper](BaseItem *paramIte in DeduplicateAnnotations() [all...] |
H A D | file_reader.cpp | 216 itemsDone_.insert({arrayId, static_cast<BaseItem *>(item)}); in CreateLiteralArrayItem() 469 itemsDone_.insert({annId, static_cast<BaseItem *>(annItem)}); in CreateAnnotationItem() 577 itemsDone_.insert({debugInfoId, static_cast<BaseItem *>(debugInfoItem)}); in CreateDebugInfoItem() 686 itemsDone_.insert({methodId, static_cast<BaseItem *>(methodItem)}); in CreateMethodItem() 796 itemsDone_.insert({fieldId, static_cast<BaseItem *>(fieldItem)}); in CreateFieldItem() 854 itemsDone_.insert({methodId, static_cast<BaseItem *>(methodItem)}); in CreateForeignMethodItem() 892 itemsDone_.insert({fieldId, static_cast<BaseItem *>(fieldItem)}); in CreateForeignFieldItem() 907 itemsDone_.insert({classId, static_cast<BaseItem *>(classItem)}); in CreateForeignClassItem() 923 itemsDone_.insert({classId, static_cast<BaseItem *>(classItem)}); in CreateClassItem() 1092 const std::map<BaseItem *, Fil in InstCheckByFlags() [all...] |
H A D | file_items.cpp | 73 static bool WriteIdTaggedValue(Writer *writer, Tag tag, BaseItem *item) in WriteIdTaggedValue() 144 std::string BaseItem::GetName() const in GetName()
|
/arkcompiler/runtime_core/static_core/quickener/ |
H A D | quickener.h | 33 const std::map<panda_file::File::EntityId, panda_file::BaseItem *> *items) in Quickener() 50 std::unordered_map<panda_file::File::EntityId, panda_file::BaseItem *> ids_done; 52 const std::map<panda_file::File::EntityId, panda_file::BaseItem *> *items_;
|
/arkcompiler/runtime_core/static_core/static_linker/ |
H A D | linker_context.h | 126 const std::unordered_map<panda_file::BaseItem *, panda_file::BaseItem *> &GetKnownItems() const in GetKnownItems() 164 std::unordered_map<panda_file::BaseItem *, panda_file::BaseItem *> knownItems_; 165 std::multimap<const panda_file::BaseItem *, const panda_file::FileReader *> cameFrom_; 234 void AddItemToKnown(panda_file::BaseItem *item, const std::map<std::string, panda_file::BaseClassItem *> &cm, 237 void MergeItem(panda_file::BaseItem *item, const panda_file::FileReader &reader); 244 using InfoType = std::variant<const panda_file::BaseItem *, std::string>; 246 ErrorDetail(std::string name, const panda_file::BaseItem *item1) : name_(std::move(name)), info_(item1) in ErrorDetail() 314 std::variant<panda_file::BaseItem *, ErrorDetai [all...] |
H A D | linker_context_misc.cpp | 72 void ReprItem(std::ostream &o, const panda_file::BaseItem *i); 101 void ReprValueItem(std::ostream &o, const panda_file::BaseItem *i) in ReprValueItem() 148 void ReprAnnotationItem(std::ostream &o, const panda_file::BaseItem *i) in ReprAnnotationItem() 166 void ReprStringItem(std::ostream &o, const panda_file::BaseItem *i) in ReprStringItem() 198 void ReprItem(std::ostream &o, const panda_file::BaseItem *i) in ReprItem()
|
H A D | linker_context.cpp | 42 void Context::AddItemToKnown(panda_file::BaseItem *item, const std::map<std::string, panda_file::BaseClassItem *> &cm, in AddItemToKnown() 56 void Context::MergeItem(panda_file::BaseItem *item, const panda_file::FileReader &reader) in MergeItem() 189 oi->VisitFields([this, ni, reader](panda_file::BaseItem *mi) -> bool { in MergeClass() 195 oi->VisitMethods([this, ni, reader](panda_file::BaseItem *mi) -> bool { in MergeClass() 456 kls->VisitFields([&](panda_file::BaseItem *bi) { in TryFindField() 644 if constexpr (std::is_base_of_v<panda_file::BaseItem, std::decay_t<T>>) { 683 if (i.HasValue<panda_file::BaseItem *>()) { in ArrayValueFromOld() 688 i = panda_file::ScalarValueItem(std::get<panda_file::BaseItem *>(vl)); in ArrayValueFromOld() 713 return cont_.GetOrCreateIdValueItem(std::get<panda_file::BaseItem *>(newItem)); in ValueFromOld() 755 std::variant<panda_file::BaseItem *, Contex [all...] |
/arkcompiler/runtime_core/libpandafile/tests/ |
H A D | file_item_container_test.cpp | 918 void CheckItemBeforePGO1(std::list<std::unique_ptr<BaseItem>>::const_iterator& item, in CheckItemBeforePGO1() 947 void CheckItemBeforePGO2(std::list<std::unique_ptr<BaseItem>>::const_iterator& item, in CheckItemBeforePGO2() 981 void CheckItemAfterPGO1(std::list<std::unique_ptr<BaseItem>>::const_iterator& item, in CheckItemAfterPGO1() 1011 void CheckItemAfterPGO2(std::list<std::unique_ptr<BaseItem>>::const_iterator& item, in CheckItemAfterPGO2() 1112 std::function<bool(BaseItem *)> TestMethod = [&](BaseItem *method) { in PerformTests() 1122 panda_file::BaseItem::VisitorCallBack cb_method = TestMethod; in PerformTests() 1126 std::function<bool(BaseItem *)> TestField = [&](BaseItem *field) { in PerformTests() 1135 panda_file::BaseItem in PerformTests() [all...] |
/arkcompiler/runtime_core/static_core/libpandafile/tests/ |
H A D | file_item_container_test.cpp | 1014 std::function<bool(BaseItem *)> testMethod = [&](BaseItem *method) { in TEST() 1024 panda_file::BaseItem::VisitorCallBack cbMethod = testMethod; in TEST() 1028 std::function<bool(BaseItem *)> testField = [&](BaseItem *field) { in TEST() 1037 panda_file::BaseItem::VisitorCallBack cbField = testField; in TEST()
|