Lines Matching refs:attrs

423   ParsedDWARFTypeAttributes attrs(die);
425 if (DWARFDIE signature_die = attrs.signature.Reference()) {
455 type_sp = ParseTypeModifier(sc, die, attrs);
462 type_sp = ParseStructureLikeDIE(sc, die, attrs);
467 type_sp = ParseEnum(sc, die, attrs);
474 type_sp = ParseSubroutine(die, attrs);
478 type_sp = ParseArrayType(die, attrs);
482 type_sp = ParsePointerToMemberType(die, attrs);
502 ParsedDWARFTypeAttributes &attrs) {
513 if (tag == DW_TAG_typedef && attrs.type.IsValid()) {
537 const DWARFDIE encoding_die = attrs.type.Reference();
561 if (attrs.name == "nullptr_t" || attrs.name == "decltype(nullptr)") {
573 attrs.name.GetStringRef(), attrs.encoding,
574 attrs.byte_size.getValueOr(0) * 8);
631 attrs.type.Clear();
644 if (attrs.name) {
645 if (attrs.name == "id") {
654 attrs.type.Clear();
656 } else if (attrs.name == "Class") {
665 attrs.type.Clear();
667 } else if (attrs.name == "SEL") {
676 attrs.type.Clear();
680 attrs.type.IsValid()) {
684 const DWARFDIE encoding_die = attrs.type.Reference();
698 attrs.type.Clear();
707 die.GetID(), dwarf, attrs.name, attrs.byte_size, nullptr,
708 dwarf->GetUID(attrs.type.Reference()), encoding_data_type, &attrs.decl,
717 ParsedDWARFTypeAttributes &attrs) {
724 if (attrs.is_forward_declaration) {
751 DW_TAG_value_to_name(tag), attrs.name.GetCString(),
774 if (attrs.type.IsValid()) {
776 dwarf->ResolveTypeUID(attrs.type.Reference(), true);
782 if (attrs.byte_size) {
784 "", DW_ATE_signed, *attrs.byte_size * 8);
791 attrs.name.GetCString(), GetClangDeclContextContainingDIE(die, nullptr),
792 attrs.decl, enumerator_clang_type, attrs.is_scoped_enum);
801 die.GetID(), dwarf, attrs.name, attrs.byte_size, nullptr,
802 dwarf->GetUID(attrs.type.Reference()), Type::eEncodingIsUID, &attrs.decl,
818 die.GetOffset(), attrs.name.GetCString());
824 ParsedDWARFTypeAttributes &attrs) {
838 if (attrs.object_pointer) {
839 const char *object_pointer_name_cstr = attrs.object_pointer.GetName();
850 if (attrs.type.IsValid())
851 func_type = dwarf->ResolveTypeUID(attrs.type.Reference(), true);
907 if (attrs.name) {
910 ObjCLanguage::MethodName objc_method(attrs.name.GetStringRef(), true);
931 if (attrs.accessibility == eAccessNone)
932 attrs.accessibility = eAccessPublic;
936 class_opaque_type, attrs.name.GetCString(), clang_type,
937 attrs.accessibility, attrs.is_artificial, is_variadic,
938 attrs.is_objc_direct_call);
984 if (attrs.specification.IsValid()) {
993 DWARFDIE spec_die = attrs.specification.Reference();
1005 } else if (attrs.abstract_origin.IsValid()) {
1012 DWARFDIE abs_die = attrs.abstract_origin.Reference();
1050 attrs.name.GetStringRef()) {
1068 attrs.name.GetCString(),
1079 if (attrs.accessibility == eAccessNone)
1080 attrs.accessibility = eAccessPublic;
1085 attrs.name.GetCString(), attrs.mangled_name,
1086 clang_type, attrs.accessibility, attrs.is_virtual,
1087 is_static, attrs.is_inline, attrs.is_explicit,
1088 is_attr_used, attrs.is_artificial);
1093 type_handled |= attrs.is_artificial;
1158 if (attrs.abstract_origin.IsValid()) {
1159 DWARFDIE abs_die = attrs.abstract_origin.Reference();
1176 attrs.name.GetCString(), clang_type, attrs.storage,
1177 attrs.is_inline);
1185 attrs.name.GetCString(), clang_type, attrs.storage,
1186 attrs.is_inline);
1190 attrs.name.GetCString(), template_param_infos);
1227 die.GetID(), dwarf, attrs.name, llvm::None, nullptr, LLDB_INVALID_UID,
1228 Type::eEncodingIsUID, &attrs.decl, clang_type, Type::ResolveState::Full);
1232 ParsedDWARFTypeAttributes &attrs) {
1238 DWARFDIE type_die = attrs.type.Reference();
1246 attrs.byte_stride = array_info->byte_stride;
1247 attrs.bit_stride = array_info->bit_stride;
1249 if (attrs.byte_stride == 0 && attrs.bit_stride == 0)
1250 attrs.byte_stride = element_type->GetByteSize().getValueOr(0);
1292 attrs.byte_stride * 8 + attrs.bit_stride;
1300 attrs.is_vector);
1308 m_ast.CreateArrayType(array_element_type, 0, attrs.is_vector);
1313 dwarf->GetUID(type_die), Type::eEncodingIsUID, &attrs.decl, clang_type,
1322 const DWARFDIE &die, const ParsedDWARFTypeAttributes &attrs) {
1324 Type *pointee_type = dwarf->ResolveTypeUID(attrs.type.Reference(), true);
1326 dwarf->ResolveTypeUID(attrs.containing_type.Reference(), true);
1336 return std::make_shared<Type>(die.GetID(), dwarf, attrs.name,
1381 ParsedDWARFTypeAttributes &attrs) {
1396 ConstString unique_typename(attrs.name);
1397 Declaration unique_decl(attrs.decl);
1399 if (attrs.name) {
1411 unique_typename, die, unique_decl, attrs.byte_size.getValueOr(-1),
1439 if (attrs.byte_size && *attrs.byte_size == 0 && attrs.name &&
1451 attrs.is_forward_declaration = true;
1454 if (attrs.class_language == eLanguageTypeObjC ||
1455 attrs.class_language == eLanguageTypeObjC_plus_plus) {
1456 if (!attrs.is_complete_objc_class &&
1464 dwarf->FindCompleteObjCDefinitionTypeForDIE(die, attrs.name, true);
1473 die, attrs.name, true);
1484 DW_TAG_value_to_name(tag), attrs.name.GetCString(),
1497 if (attrs.is_forward_declaration) {
1509 attrs.name.GetCString());
1542 DW_TAG_value_to_name(tag), attrs.name.GetCString(),
1570 attrs.name.GetCString());
1572 if (attrs.accessibility == eAccessNone && decl_ctx) {
1577 attrs.accessibility = default_accessibility;
1584 if (attrs.name.GetStringRef().contains('<')) {
1588 m_ast.ParseClassTemplateDecl(decl_ctx, attrs.accessibility,
1589 attrs.name.GetCString(), tag_decl_kind,
1598 DW_TAG_value_to_name(tag), attrs.name.GetCString());
1619 decl_ctx, attrs.accessibility, attrs.name.GetCString(), tag_decl_kind,
1620 attrs.class_language, &metadata, attrs.exports_symbols);
1628 type_sp = std::make_shared<Type>(die.GetID(), dwarf, attrs.name,
1629 attrs.byte_size, nullptr, LLDB_INVALID_UID,
1630 Type::eEncodingIsUID, &attrs.decl,
1633 type_sp->SetIsCompleteObjCClass(attrs.is_complete_objc_class);
1641 unique_ast_entry_up->m_byte_size = attrs.byte_size.getValueOr(0);
1645 if (attrs.is_forward_declaration && die.HasChildren()) {
1663 attrs.is_forward_declaration = false;
1672 if (!attrs.is_forward_declaration) {
1686 die.GetOffset(), attrs.name.GetCString());
1708 if (attrs.class_language != eLanguageTypeObjC &&
1709 attrs.class_language != eLanguageTypeObjC_plus_plus)
1737 if (attrs.calling_convention == llvm::dwarf::DW_CC_pass_by_value) {
1745 if (attrs.calling_convention == llvm::dwarf::DW_CC_pass_by_reference) {