dwarfstrings patches
by Mark Wielaard
Hi,
I didn't see any more replies to the patches and wanted to push them.
But doing some self-reviewing I found two issues. The new symbol version
directive should be ELFUTILS_0.155 (not 0.154) and two functions were
missing (dwarf_endianity_string and dwarf_decimal_sign_string), readelf
was missing these too. So I added that and rebased on master. I fixed up
one testcase that depended on CU language description instead of constant
name.
New rebased patches also on mjw/dwarfstrings branch. If this looks OK then
I'll merge it to master.
Cheers,
Mark
11 years, 8 months
[PATCH] Update main bugzilla URL
by Jan Pokorný
Signed-off-by: Jan Pokorný <jpokorny(a)redhat.com>
---
configure.ac | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure.ac b/configure.ac
index 31ab21c..7932489 100644
--- a/configure.ac
+++ b/configure.ac
@@ -17,7 +17,7 @@ dnl GNU General Public License for more details.
dnl
dnl You should have received a copy of the GNU General Public License
dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
-AC_INIT([elfutils],[0.154],[http://bugzilla.redhat.com/bugzilla/],[elfutils])
+AC_INIT([elfutils],[0.154],[https://bugzilla.redhat.com/],[elfutils])
AC_CONFIG_AUX_DIR([config])
AC_CONFIG_FILES([config/Makefile])
--
1.7.11.2
11 years, 8 months
RFC: Handling dwz multi debuginfo files
by Mark Wielaard
Hi,
This patch adds support for dwz multi debuginfo files to libdw.
Fedora is planning to use these in the next release:
https://fedoraproject.org/wiki/Features/DwarfCompressor
The new DW_FORMs are proposed for DWARF5:
http://www.dwarfstd.org/ShowIssue.php?issue=120604.1
But are currently only a GNU extension written by the dwz tool:
http://sourceware.org/git/?p=dwz.git;a=summary
libdw was already setup anticipating such a scheme, so adding support
wasn't so hard. Basically a Dwarf descriptor can now have an alternative
Dwarf descriptor that is consulted whenever one of the new DW_FROM_*alts
is seen.
dwarf_begin_elf will find the right dwz alternative to use. But this is
currently tied somewhat to how fedora implemented this. There are also
two new functions dwarf_getalt () and dwarf_addalt () that can be used
to directly manipulate the alternative Dwarf descriptor. I anticipate
those will be used by some new libdwfl callbacks if we decide those are
necessary to support other ways to get/set alternative Dwarf
descriptors.
This is only lightly tested, but some quick stap queries on rawhide
packages that already had dwz files seemed to return the right results.
I did add some small test binary files and a readelf test to show the
results. I'll add some more tests once we decide whether this is the
proper way to support this.
Please take a look at the proposed implementation and let me know
whether it looks OK or some other approach might be better. I also
pushed this to the mjw/dwz branch.
Thanks,
Mark
11 years, 8 months
Fixlet in readelf formatting string
by Petr Machata
Hello,
in addition to the 64-bit archive support, I pushed a fixlet for
formatting string in readelf, which broke 32-bit builds.
PM
11 years, 8 months
Support archives with 64-bit symbol table
by Petr Machata
Dear all,
these two patches implement support for 64-bit symbol table in .a
archives. As of recently, binutils' ar produces such archives on s390x
(regardless of actual archive size). This appears to be the same as
"/", except all fields are 64-bit.
These patches enable readelf -c and readelf -a, fixes run-arextract.sh
and run-arsymtest.sh on s390x, and adds a test that will trigger on any
arch (in patch #2). Tested on i686, x86_64, ppc32, ppc64 and s390x.
Comments?
Thanks,
PM
11 years, 8 months
Last 4 dwarfstrings patches
by Mark Wielaard
Hi,
The following messages are the last 4 dwarfstrings patches, the two
remaining code and two remaining test changes. The first introduces
known-dwarf macros in the current code, the second moves them into
their own files with public functions, the third adds a new self test
that checks all encountered DWARF codes are known. The last introduces
the C++ test framework and a (very) simple test that depends on a
C++x0 feature.
[PATCH 1/4] Rewrite DWARF string functions using known-dwarf macros.
[PATCH 2/4] libdw: Add dwarfstrings functions.
[PATCH 3/4] tests: Add run-readelf-unknown-self.sh test
[PATCH 4/4] tests: Add C++ self test binary.
I would like to apply these now unless there are more comments,
suggestions or objections.
Thanks,
Mark
11 years, 8 months
FYI: readelf.c (print_ops): Add missing DW_OP_GNU operands.
by Mark Wielaard
Pushed the following commit as obvious.
commit 716486d5a15bdfb528c5d011dc623fa0f6fdc2af
Author: Mark Wielaard <mjw(a)redhat.com>
Date: Tue Apr 24 11:56:42 2012 +0200
readelf.c (print_ops): Add missing DW_OP_GNU operands.
DW_OP_GNU_push_tls_address, DW_OP_GNU_uinit and DW_OP_GNU_encoded_addr.
diff --git a/src/ChangeLog b/src/ChangeLog
index 642df1b..cae5e6b 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,8 @@
+2012-04-24 Mark Wielaard <mjw(a)redhat.com>
+
+ * readelf.c (print_ops): Add DW_OP_GNU_push_tls_address,
+ DW_OP_GNU_uinit and DW_OP_GNU_encoded_addr.
+
2012-03-28 Roland McGrath <roland(a)hack.frob.com>
* elflint.c (special_sections): Accept SHF_INFO_LINK for reloc sections.
diff --git a/src/readelf.c b/src/readelf.c
index b70779d..b4e9fc8 100644
--- a/src/readelf.c
+++ b/src/readelf.c
@@ -4065,6 +4065,9 @@ print_ops (Dwfl_Module *dwflmod, Dwarf *dbg, int indent, int indentrest,
[DW_OP_bit_piece] = "bit_piece",
[DW_OP_implicit_value] = "implicit_value",
[DW_OP_stack_value] = "stack_value",
+ [DW_OP_GNU_push_tls_address] = "GNU_push_tls_address",
+ [DW_OP_GNU_uninit] = "GNU_uninit",
+ [DW_OP_GNU_encoded_addr] = "GNU_encoded_addr",
[DW_OP_GNU_implicit_pointer] = "GNU_implicit_pointer",
[DW_OP_GNU_entry_value] = "GNU_entry_value",
[DW_OP_GNU_const_type] = "GNU_const_type",
11 years, 8 months