addr2line: fix allocation leak in error pathCID: 1437677Reported by: Coverity ScanSponsored by: The FreeBSD Foundation
addr2line: rework check_range conditionsSimplify logic and reduce indentation for DW_AT_low_pc case.Reviewed by: Tiger Gao, markjSponsored by: The FreeBSD FoundationDifferential Revision: https
addr2line: rework check_range conditionsSimplify logic and reduce indentation for DW_AT_low_pc case.Reviewed by: Tiger Gao, markjSponsored by: The FreeBSD FoundationDifferential Revision: https://reviews.freebsd.org/D27426
show more ...
addr2line: add label checks when DW_AT_range and DW_AT_low_pc cannot be usedCheck label's ranges for address we want to translate if a CU doesn'thave usable DW_AT_range or DW_AT_low_pc.Use more
addr2line: add label checks when DW_AT_range and DW_AT_low_pc cannot be usedCheck label's ranges for address we want to translate if a CU doesn'thave usable DW_AT_range or DW_AT_low_pc.Use more appropriate names: "struct CU" -> "struct range"Developed as part of upstream ELF Tool Chain bug reporthttps://sourceforge.net/p/elftoolchain/tickets/552/ although this doesnot address the specific case reported there.Submitted by: Tiger Gao <tig@freebsdfoundation.org>MFC after: 1 monthSponsored by: The FreeBSD FoundationDifferential Revision: https://reviews.freebsd.org/D23782
addr2line: swap if conditions for diff reduction in upcoming changeNo functional change intended.
addr2line: use stdbool.h header for boolPresumably a bool definition is obtained via header contamination onFreeBSD-CURRENT. Found while trying to upstream FreeBSD addr2linechanges - the FreeBSD
addr2line: use stdbool.h header for boolPresumably a bool definition is obtained via header contamination onFreeBSD-CURRENT. Found while trying to upstream FreeBSD addr2linechanges - the FreeBSD 11.2 CI build failed there.Reported by: Cirrus-CI, upstream ELF Tool ChainMFC with: r357844Sponsored by: The FreeBSD Foundation
addr2line: Handle DW_AT_ranges in compile unitsBased on original submission by Marat Radchenko in ELF Tool Chainticket #545, rebased and updated by Tiger Gao.PR: 217736Submitted by: Marat Radc
addr2line: Handle DW_AT_ranges in compile unitsBased on original submission by Marat Radchenko in ELF Tool Chainticket #545, rebased and updated by Tiger Gao.PR: 217736Submitted by: Marat Radchenko <marat@slonopotamus.org>Submitted by: Tiger Gao <tig@freebsdfoundation.org>Reviewed by: markjMFC after: 2 weeksSponsored by: The FreeBSD FoundationDifferential Revision: https://reviews.freebsd.org/D23501
addr2line: Avoid a name collision.The RB_ macros define functions with a parameter named head, and gccwarns about this.MFC with: r357450
addr2line: Cache CU DIEs upon a successful address lookup.Previously, addr2line would sequentially search all CUs for each inputaddress. For some uses, notably syzkaller's code coverage map gener
addr2line: Cache CU DIEs upon a successful address lookup.Previously, addr2line would sequentially search all CUs for each inputaddress. For some uses, notably syzkaller's code coverage map generator,this was extremely slow. Add a CU cache into which entries are addedfollowing a successful lookup, and search the cache before falling backto a scan. When translating a large number of addresses this yieldsslightly better performance than GNU addr2line.Garbage-collect an unused hash table which appears to have been intendedfor the same purpose. A hash table doesn't seem particularly suitablesince each CU spans a range of addresses.Submitted by: Tiger Gao <tig@freebsdfoundation.org>MFC after: 2 weeksSponsored by: The FreeBSD FoundationDifferential Revision: https://reviews.freebsd.org/D23418
Update ELF Tool Chain to upstream r3769This contains many small bugfixes and documentation improvements.Sponsored by: The FreeBSD Foundation
Capsicumize addr2line(1).Reviewed by: oshogboSponsored by: The FreeBSD FoundationDifferential Revision: https://reviews.freebsd.org/D21104
Update to ELF Tool Chain r3668Highlights:- Make sure that only TLS sections are sorted into TLS segment.- Fixed multiple errors in "Section to Segment mapping".- Man page updates- ar improvemen
Update to ELF Tool Chain r3668Highlights:- Make sure that only TLS sections are sorted into TLS segment.- Fixed multiple errors in "Section to Segment mapping".- Man page updates- ar improvements- elfcopy: avoid filter_reloc uninitialized variable for rela- elfcopy: avoid stripping relocations from static binaries- readelf: avoid printing directory in front of absolute path- readelf: add NT_FREEBSD_FEATURE_CTL FreeBSD note type- test improvementsNOTES:Some of these changes originated in FreeBSD and simply reduce diffsbetween contrib and vendor.ELF Tool Chain ar is not (currently) used in FreeBSD, and there areimprovements in both FreeBSD and ELF Tool Chain ar that are not inthe other.Sponsored by: The FreeBSD Foundation
Update ELF Tool Chain to upstream r3520Highlights of changes between r3490 and r3520:- Improve C++ demangling- Improve compatibility with Binutils tools wrt. error messages- Handle additional t
Update ELF Tool Chain to upstream r3520Highlights of changes between r3490 and r3520:- Improve C++ demangling- Improve compatibility with Binutils tools wrt. error messages- Handle additional types/sections/etc. in readelf and elfdump- addr2line, cxxfilt: use setvbuf to set line buffering for filter usePR: 218395MFC after: 2 weeksRelnotes: YesSponsored by: The FreeBSD Foundation
Update to ELF Tool Chain r3475Improvements include: * Add support for reporting and handling a number of new constants in various tools, including: * CloudABI OSABI * DT_TLSDESC_*
Update to ELF Tool Chain r3475Improvements include: * Add support for reporting and handling a number of new constants in various tools, including: * CloudABI OSABI * DT_TLSDESC_* * i386, MIPS, SPARC and amd64 relocations * C++ demangler bug fixes * Man page updates * Improved input validation in several toolsThis update also reduces diffs against upstream as a number of fixesincluded in upstream were previously cherry-picked into FreeBSD.Sponsored by: The FreeBSD Foundation
Update ELF Tool Chain to upstream rev 3400Some notable improvements include:readelf:- Add AArch64 relocation definitions.- Report value of unknown relocation types.elfcopy:- Consider symbols
Update ELF Tool Chain to upstream rev 3400Some notable improvements include:readelf:- Add AArch64 relocation definitions.- Report value of unknown relocation types.elfcopy:- Consider symbols with STB_GNU_UNIQUE binding as global symbols.- Fixed support for VMA adjustment for loadable sections found in relocatable objects.- Handle nameless global symbols.- Improve wildcard matching for !-prefixed symbols.- Add PE/COFF support.elfdump:- Improve section type reporting.- Add MIPS-specific section types.This update also includes a significant number of bug fixes.PR: 207091 [exp-run]Sponsored by: The FreeBSD Foundation
Update to ELF Tool Chain r3272Highlights (not already in the FreeBSD tree): - addr2line: Speed up and support searching inlined functions - addr2line: Support -i, -a, -p options - readelf: Add s
Update to ELF Tool Chain r3272Highlights (not already in the FreeBSD tree): - addr2line: Speed up and support searching inlined functions - addr2line: Support -i, -a, -p options - readelf: Add some ARM relocation types - readelf, libelf: Avoid reading beyond end of buffer/fileRelnotes: YesSponsored by: The FreeBSD Foundation
addr2line: initialize die to NULLGCC on MIPS produced a 'may be used uninitialized' warning afterr289071.Reported by: sbrunoPointy hat to: emaste
Update to ELF Tool Chain r3250Highlights (not already in the FreeBSD tree): - addr2line: Fixed multiple memory leaks related to DIE allocation - readelf: improve sh_link validation - various
Update to ELF Tool Chain r3250Highlights (not already in the FreeBSD tree): - addr2line: Fixed multiple memory leaks related to DIE allocation - readelf: improve sh_link validation - various man page improvementsSponsored by: The FreeBSD Foundation
addr2line: skip CUs lacking debug info instead of bailing outSome binaries (such as the FreeBSD kernel) contain a mixture of CUswith and without debug information. Previously translate() exited up
addr2line: skip CUs lacking debug info instead of bailing outSome binaries (such as the FreeBSD kernel) contain a mixture of CUswith and without debug information. Previously translate() exited uponencountering a CU without debug information. Instead, just move on tothe next CU.Reported by: roygerReviewed by: roygerSponsored by: The FreeBSD FoundationDifferential Revision: https://reviews.freebsd.org/D3712
Update to ELF Tool Chain r3197Highlights: - Fix man page markup, whitespace, and typos - Fix sh_info of SHT_GROUP section to point to the correct string - Improve validation in readelf and elfco
Update to ELF Tool Chain r3197Highlights: - Fix man page markup, whitespace, and typos - Fix sh_info of SHT_GROUP section to point to the correct string - Improve validation in readelf and elfcopy/strip - Handle DWARF 4's DW_AT_high_pc in addr2lineSponsored by: The FreeBSD Foundation
Update elftoolchain to upstream revision 3179Some notable changes:- libdwarf: Fixed DWARF4 line section- elfcopy: Implement --localize-hidden- nm: handle object name referenced by DW_AT_specific
Update elftoolchain to upstream revision 3179Some notable changes:- libdwarf: Fixed DWARF4 line section- elfcopy: Implement --localize-hidden- nm: handle object name referenced by DW_AT_specification- elfcopy: Add --strip-dwo and --extract-dwo options for split DWARF- readelf: add remaining arm64 dynamic relocation names- nm: Avoid integer overflow in value comparisonRelnotes: YesSponsored by: The FreeBSD Foundation
Update elftoolchain to upstream revision 3163Most of our changes have now been committed upstream, so this change islargely bookkeeping.Sponsored by: The FreeBSD Foundation
addr2line: fflush output after each address lookupCertain tools spawn addr2line and pass addresses one at a time forresolution.PR: 195561Reported by: antoineSponsored by: The FreeBSD Foundati
addr2line: fflush output after each address lookupCertain tools spawn addr2line and pass addresses one at a time forresolution.PR: 195561Reported by: antoineSponsored by: The FreeBSD Foundation
Copy elftoolchain binutils replacements from vendor branchSponsored by: The FreeBSD Foundation