Author: tberghammer Date: Mon Jul 4 08:31:57 2016 New Revision: 274500 URL: http://llvm.org/viewvc/llvm-project?rev=274500&view=rev Log: Ignore oatdata and oatexec symbols more widely
These are artifical symbols inside android oat files without any value for the user while causing a significant perfoamce hit inside the unwinder. We were already ignoring it inside system@framew...@boot.oat bot they have to be ignored in every oat file. Considering that oat files are only used on android this have no effect on any other platfrom. Modified: lldb/trunk/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp Modified: lldb/trunk/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp?rev=274500&r1=274499&r2=274500&view=diff ============================================================================== --- lldb/trunk/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp (original) +++ lldb/trunk/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp Mon Jul 4 08:31:57 2016 @@ -2184,15 +2184,15 @@ ObjectFileELF::ParseSymbols (Symtab *sym static ConstString bss_section_name(".bss"); static ConstString opd_section_name(".opd"); // For ppc64 - // On Android the oatdata and the oatexec symbols in system@framew...@boot.oat covers the full - // .text section what causes issues with displaying unusable symbol name to the user and very - // slow unwinding speed because the instruction emulation based unwind plans try to emulate all + // On Android the oatdata and the oatexec symbols in the oat files covers the full .text + // section what causes issues with displaying unusable symbol name to the user and very slow + // unwinding speed because the instruction emulation based unwind plans try to emulate all // instructions in these symbols. Don't add these symbols to the symbol list as they have no // use for the debugger and they are causing a lot of trouble. // Filtering can't be restricted to Android because this special object file don't contain the // note section specifying the environment to Android but the custom extension and file name // makes it highly unlikely that this will collide with anything else. - bool skip_oatdata_oatexec = m_file.GetFilename() == ConstString("system@framew...@boot.oat"); + bool skip_oatdata_oatexec = m_file.GetFileNameExtension() == ConstString("oat"); ArchSpec arch; GetArchitecture(arch); _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits