DWARF utilities for static code analysis
dwarves is a set of tools that use the DWARF debugging information inserted in
ELF binaries by compilers such as GCC, used by well known debuggers such as
GDB, and more recent ones such as systemtap.
Utilities in the dwarves suite include pahole, that can be used to find
alignment holes in structs and classes in languages such as C, C++, but not
limited to these.
It also extracts other information such as CPU cacheline alignment, helping
pack those structures to achieve more cache hits.
A diff like tool, codiff can be used to compare the effects changes in source
code generate on the resulting binaries.
Another tool is pfunct, that can be used to find all sorts of information about
functions, inlines, decisions made by the compiler about inlining, etc.
- Download package
-
Checkout Package
osc -A https://api.opensuse.org checkout SUSE:SLE-15-SP6:GA/dwarves && cd $_
- Create Badge
Source Files
Filename | Size | Changed |
---|---|---|
baselibs.conf | 0000000113 113 Bytes | |
dwarves-1.25.tar.sign | 0000000228 228 Bytes | |
dwarves-1.25.tar.xz | 0002244876 2.14 MB | |
dwarves.changes | 0000015404 15 KB | |
dwarves.keyring | 0000006445 6.29 KB | |
dwarves.spec | 0000004226 4.13 KB |
Latest Revision
- Fix have_libbpf conditional (jsc#PED-4593 bsc#1216042). Note: needs updated linux-glibc-devel - SR in progress - Update to release 1.25 * Fixed the handling of DW_TAG_unspecified type in assembly functions that came with binutils 2.40 * Allow the BTF encoding of optimized functions (ending in .constprop, .isra), * Exclude BTF optimized functions not following the calling convention * Support for DW_TAG_atomic_type * Support for the DW_TAG_LLVM_annotation BTF equivalent (BTF_KIND_TYPE_TAG) on the BTF loader and for now suppressing it when pretty printing - Drop 0001-pahole-Support-lang-lang_exclude-asm.patch, 0002-btf_encoder-Add-extra-debug-info-for-unsupported-DWA.patch, 0003-btf_encoder-Store-the-CU-being-processed-to-avoid-ch.patch, 0004-core-Add-DW_TAG_unspecified_type-to-tag__is_tag_type.patch, 0005-core-Record-if-a-CU-has-a-DW_TAG_unspecified_type.patch, 0006-btf_encoder-Encode-DW_TAG_unspecified_type-returning.patch, 0007-dwarves-Zero-initialize-struct-cu-in-cu__new-to-prev.patch - Add 0001-pahole-Support-lang-lang_exclude-asm.patch, 0002-btf_encoder-Add-extra-debug-info-for-unsupported-DWA.patch, 0003-btf_encoder-Store-the-CU-being-processed-to-avoid-ch.patch, 0004-core-Add-DW_TAG_unspecified_type-to-tag__is_tag_type.patch, 0005-core-Record-if-a-CU-has-a-DW_TAG_unspecified_type.patch, 0006-btf_encoder-Encode-DW_TAG_unspecified_type-returning.patch, 0007-dwarves-Zero-initialize-struct-cu-in-cu__new-to-prev.patch as in order to support DW_TAG_unspecified_type that is newly emitted by binutils 2.40+.
Comments 0