Add support for tvos and watchos to ObjectFileMachO.

Add support for the new dyld shared cache format on
ios etc devices.
Small changes for classifying ObjC metadata symbols.

llvm-svn: 252588
This commit is contained in:
Jason Molenda
2015-11-10 05:21:54 +00:00
parent fd778eebac
commit 649a607e11
4 changed files with 243 additions and 144 deletions

View File

@@ -626,3 +626,28 @@ ObjectFile::GetSectionList(bool update_module_section_list)
}
return m_sections_ap.get();
}
lldb::SymbolType
ObjectFile::GetSymbolTypeFromName (llvm::StringRef name,
lldb::SymbolType symbol_type_hint)
{
if (!name.empty())
{
if (name.startswith("_OBJC_"))
{
// ObjC
if (name.startswith("_OBJC_CLASS_$_"))
return lldb::eSymbolTypeObjCClass;
if (name.startswith("_OBJC_METACLASS_$_"))
return lldb::eSymbolTypeObjCMetaClass;
if (name.startswith("_OBJC_IVAR_$_"))
return lldb::eSymbolTypeObjCIVar;
}
else if (name.startswith(".objc_class_name_"))
{
// ObjC v1
return lldb::eSymbolTypeObjCClass;
}
}
return symbol_type_hint;
}