Lines Matching refs:entities

150     const AsmEmitter::AsmEntityCollections &entities)
200 auto method_item = static_cast<panda::panda_file::MethodItem *>(Find(entities.method_items, name));
206 auto lit_item = Find(entities.literalarray_items, key);
318 const AsmEmitter::AsmEntityCollections &entities)
321 auto *annotation_item = CreateAnnotationItem(container, annotation, program, entities);
337 const AsmEmitter::AsmEntityCollections &entities)
366 return CreateScalarRecordValueItem(container, value, out, entities.class_items);
369 return CreateScalarMethodValueItem(container, value, out, program, entities.method_items);
372 return CreateScalarEnumValueItem(container, value, out, entities.field_items);
375 return CreateScalarAnnotationValueItem(container, value, out, program, entities);
378 return CreateScalarLiteralArrayItem(container, value, out, program, entities.literalarray_items);
389 const AsmEmitter::AsmEntityCollections &entities)
396 CreateScalarValueItem(container, &elem_value, &elements, program, entities);
407 return CreateScalarValueItem(container, value, nullptr, program, entities);
414 const Program &program, const AsmEmitter::AsmEntityCollections &entities)
449 auto *item = CreateValueItem(container, value, program, entities);
459 auto *cls = entities.class_items.find(record_name)->second;
494 const Program &program, const AsmEmitter::AsmEntityCollections &entities)
497 auto *annotation_item = CreateAnnotationItem(container, annotation, program, entities);
534 const AsmEmitter::AsmEntityCollections &entities)
542 if (!AddDependencyByIndex(method, insn, entities.method_items)) {
545 if (!AddDependencyByIndex(method, insn, entities.literalarray_items, 1)) {
552 if (!AddDependencyByIndex(method, insn, entities.method_items)) {
555 if (!AddDependencyByIndex(method, insn, entities.literalarray_items, 1)) {
562 if (!AddDependencyByIndex(method, insn, entities.method_items)) {
569 if (!AddDependencyByIndex(method, insn, entities.string_items)) {
576 if (!AddDependencyByIndex(method, insn, entities.literalarray_items)) {
586 AsmEmitter::AsmEntityCollections &entities)
590 entities.string_items.insert({s, item});
596 AsmEmitter::AsmEntityCollections &entities)
600 entities.literalarray_items.insert({id, literal_array_item});
604 auto *literal_array_item = entities.literalarray_items.find(id)->second;
731 CreateLiteralItem(items, value.get(), &literal_array, entities);
739 AsmEmitter::AsmEntityCollections &entities)
743 entities.class_items.insert({t.GetName(), foreign_record});
749 ItemContainer *items, const Program &program, AsmEmitter::AsmEntityCollections &entities,
755 entities.class_items.insert({name, foreign_record});
770 entities.field_items.insert({full_field_name, field});
820 bool AsmEmitter::HandleFields(ItemContainer *items, const Program &program, AsmEmitter::AsmEntityCollections &entities,
826 if (entities.field_items.find(full_field_name) != entities.field_items.end()) {
841 entities.field_items.insert({full_field_name, field});
847 bool AsmEmitter::HandleRecord(ItemContainer *items, const Program &program, AsmEmitter::AsmEntityCollections &entities,
853 entities.class_items.insert({name, record});
871 if (!HandleFields(items, program, entities, primitive_types, name, rec, record)) {
880 ItemContainer *items, const Program &program, AsmEmitter::AsmEntityCollections &entities,
885 if (!HandleRecordAsForeign(items, program, entities, primitive_types, name, rec)) {
889 if (!HandleRecord(items, program, entities, primitive_types, name, rec)) {
998 bool AsmEmitter::CreateMethodItem(ItemContainer *items, AsmEmitter::AsmEntityCollections &entities,
1020 entities.method_items.insert({mangled_name, method});
1034 ItemContainer *items, const Program &program, AsmEmitter::AsmEntityCollections &entities,
1077 if (!CreateMethodItem(items, entities, func, type_item, area, foreign_area, access_flags, method_name,
1104 const AsmEmitter::AsmEntityCollections &entities)
1108 auto *field_item = static_cast<FieldItem *>(Find(entities.field_items, field_name));
1109 if (!AddAnnotations(field_item, items, *field.metadata, program, entities)) {
1117 auto *item = CreateValueItem(items, &value, program, entities);
1129 const AsmEmitter::AsmEntityCollections &entities)
1136 auto *class_item = static_cast<ClassItem *>(Find(entities.class_items, name));
1137 if (!AddAnnotations(class_item, items, *record.metadata, program, entities)) {
1142 if (!FillFields(items, program, record, entities)) {
1181 const AsmEmitter::AsmEntityCollections &entities, MethodItem *method,
1184 if (!AddAnnotations(method, items, *func.metadata, program, entities)) {
1194 if (!AddAnnotations(&param_item, items, *param.metadata, program, entities)) {
1214 const AsmEmitter::AsmEntityCollections &entities,
1222 auto *method = static_cast<MethodItem *>(Find(entities.method_items, name));
1225 if (!AddBytecodeIndexDependencies(method, func, entities)) {
1231 if (!AddMethodAndParamsAnnotations(items, program, entities, method, func)) {
1239 void AsmEmitter::FillMap(PandaFileToPandaAsmMaps *maps, AsmEmitter::AsmEntityCollections &entities)
1241 for (const auto &[name, method] : entities.method_items) {
1245 for (const auto &[name, field] : entities.field_items) {
1249 for (const auto &[name, cls] : entities.class_items) {
1253 for (const auto &[name, str] : entities.string_items) {
1257 for (const auto &[name, arr] : entities.literalarray_items) {
1297 const AsmEmitter::AsmEntityCollections &entities, bool emit_debug_info)
1307 auto *method = static_cast<MethodItem *>(Find(entities.method_items, name));
1308 if (!func.Emit(emitter, method, entities.method_items, entities.field_items, entities.class_items,
1309 entities.string_items, entities.literalarray_items)) {
1329 auto try_blocks = func.BuildTryBlocks(method, entities.class_items, *bytes);
1341 AsmEmitter::AsmEntityCollections &entities,
1344 MakeStringItems(items, program, entities);
1345 MakeArrayTypeItems(items, program, entities);
1346 if (!MakeRecordItems(items, program, entities, primitive_types)) {
1349 if (!MakeFunctionItems(items, program, entities, primitive_types, emit_debug_info)) {
1352 MakeLiteralItems(items, program, entities);
1354 if (!MakeRecordAnnotations(items, program, entities)) {
1441 auto entities = AsmEmitter::AsmEntityCollections {};
1445 if (!MakeItemsForSingleProgram(&items, *prog, emit_debug_info, entities, primitive_types)) {
1451 if (!MakeFunctionDebugInfoAndAnnotations(&items, *prog, entities, emit_debug_info)) {
1460 if (!EmitFunctions(&items, *prog, entities, emit_debug_info)) {
1482 auto entities = AsmEmitter::AsmEntityCollections {};
1486 if (!MakeItemsForSingleProgram(items, program, emit_debug_info, entities, primitive_types)) {
1491 if (!MakeFunctionDebugInfoAndAnnotations(items, program, entities, emit_debug_info)) {
1502 FillMap(maps, entities);
1505 if (!EmitFunctions(items, program, entities, emit_debug_info)) {