Lines Matching defs:SPDie
1218 if (DIE *SPDie = getDIE(SP))
1219 return SPDie;
1231 DIE &SPDie = createAndAddDIE(dwarf::DW_TAG_subprogram, *ContextDIE, SP);
1236 return &SPDie;
1238 static_cast<DwarfUnit *>(SPDie.getUnit())
1239 ->applySubprogramAttributes(SP, SPDie);
1240 return &SPDie;
1244 DIE &SPDie, bool Minimal) {
1255 addType(SPDie, DefinitionArgs[0]);
1267 addUInt(SPDie, dwarf::DW_AT_decl_file, std::nullopt, DefID);
1270 addUInt(SPDie, dwarf::DW_AT_decl_line, std::nullopt, SP->getLine());
1275 addTemplateParams(SPDie, SP->getTemplateParams());
1285 addLinkageName(SPDie, LinkageName);
1292 addDIEEntry(SPDie, dwarf::DW_AT_specification, *DeclDie);
1296 void DwarfUnit::applySubprogramAttributes(const DISubprogram *SP, DIE &SPDie,
1303 if (applySubprogramDefinitionAttributes(SP, SPDie, SkipSPAttributes))
1308 addString(SPDie, dwarf::DW_AT_name, SP->getName());
1310 addAnnotation(SPDie, SP->getAnnotations());
1313 addSourceLine(SPDie, SP);
1322 addFlag(SPDie, dwarf::DW_AT_prototyped);
1325 addFlag(SPDie, dwarf::DW_AT_APPLE_objc_direct);
1336 addUInt(SPDie, dwarf::DW_AT_calling_convention, dwarf::DW_FORM_data1, CC);
1342 addType(SPDie, Ty);
1346 addUInt(SPDie, dwarf::DW_AT_virtuality, dwarf::DW_FORM_data1, VK);
1351 addBlock(SPDie, dwarf::DW_AT_vtable_elem_location, Block);
1353 ContainingTypeMap.insert(std::make_pair(&SPDie, SP->getContainingType()));
1357 addFlag(SPDie, dwarf::DW_AT_declaration);
1361 constructSubprogramArguments(SPDie, Args);
1364 addThrownTypes(SPDie, SP->getThrownTypes());
1367 addFlag(SPDie, dwarf::DW_AT_artificial);
1370 addFlag(SPDie, dwarf::DW_AT_external);
1374 addFlag(SPDie, dwarf::DW_AT_APPLE_optimized);
1377 addUInt(SPDie, dwarf::DW_AT_APPLE_isa, dwarf::DW_FORM_flag, isa);
1381 addFlag(SPDie, dwarf::DW_AT_reference);
1384 addFlag(SPDie, dwarf::DW_AT_rvalue_reference);
1387 addFlag(SPDie, dwarf::DW_AT_noreturn);
1389 addAccess(SPDie, SP->getFlags());
1392 addFlag(SPDie, dwarf::DW_AT_explicit);
1395 addFlag(SPDie, dwarf::DW_AT_main_subprogram);
1397 addFlag(SPDie, dwarf::DW_AT_pure);
1399 addFlag(SPDie, dwarf::DW_AT_elemental);
1401 addFlag(SPDie, dwarf::DW_AT_recursive);
1404 addString(SPDie, dwarf::DW_AT_trampoline, SP->getTargetFuncName());
1407 addFlag(SPDie, dwarf::DW_AT_deleted);
1639 DIE &SPDie = *P.first;
1646 addDIEEntry(SPDie, dwarf::DW_AT_containing_type, *NDie);