]>
git.ipfire.org Git - thirdparty/elfutils.git/log
Petr Machata [Thu, 1 Oct 2009 16:25:13 +0000 (18:25 +0200)]
Don't emit base address selection entry when it doesn't change base address
Petr Machata [Thu, 1 Oct 2009 16:24:43 +0000 (18:24 +0200)]
Don't skip directory #0 when considering where to put the file
Petr Machata [Thu, 1 Oct 2009 13:47:38 +0000 (15:47 +0200)]
Select base address of 0 in .debug_loc lists
* ... so that we don't have to figure out effective base address of CU
referencing that list
Petr Machata [Wed, 30 Sep 2009 17:37:28 +0000 (19:37 +0200)]
Don't emit the DW_AT_comp_dir directory in .debug_line directory table
Petr Machata [Wed, 30 Sep 2009 14:47:45 +0000 (16:47 +0200)]
Dissect writer to several files
* having everything in output-shape.cc was becoming unwieldy
Petr Machata [Tue, 29 Sep 2009 18:13:47 +0000 (20:13 +0200)]
In .debug_line file table, also include files used by DW_AT_*_file attributes
Petr Machata [Tue, 29 Sep 2009 16:49:23 +0000 (18:49 +0200)]
.debug_line: advance_pc and advance_line both take signed operand
* also adjust some types
Petr Machata [Tue, 29 Sep 2009 10:27:27 +0000 (12:27 +0200)]
Save non-list location values as blocks
Petr Machata [Fri, 25 Sep 2009 17:08:47 +0000 (19:08 +0200)]
Emit .debug_lines before .debug_info
* Drop the unnecessary back-patching
* Implement the book-keeping necessary for correct handling of
VS_source_file values (and emit it correctly)
Petr Machata [Fri, 25 Sep 2009 16:38:53 +0000 (18:38 +0200)]
step_t ctor takes super-step as argument
Petr Machata [Wed, 23 Sep 2009 20:28:06 +0000 (22:28 +0200)]
dwarflint: minor coding style nit
Petr Machata [Wed, 23 Sep 2009 20:27:54 +0000 (22:27 +0200)]
Emit .debug_loc
Petr Machata [Wed, 23 Sep 2009 11:25:53 +0000 (13:25 +0200)]
Emit .debug_ranges
Petr Machata [Sat, 19 Sep 2009 16:17:56 +0000 (18:17 +0200)]
Gaps now have form
* assert_fits_32 can therefore be called when the gap is patched, for
relevant forms.
Petr Machata [Sat, 19 Sep 2009 14:11:07 +0000 (16:11 +0200)]
A couple fixes for dwarf_64
Petr Machata [Fri, 18 Sep 2009 17:00:02 +0000 (19:00 +0200)]
Backpatch references to .debug_line tables
Petr Machata [Tue, 15 Sep 2009 17:26:32 +0000 (19:26 +0200)]
Emit .debug_line
Petr Machata [Tue, 15 Sep 2009 12:31:20 +0000 (14:31 +0200)]
Extract assert_fits_32 to writer
Petr Machata [Wed, 9 Sep 2009 15:02:59 +0000 (17:02 +0200)]
Move some code around to hopefully make things simpler
Petr Machata [Wed, 9 Sep 2009 13:42:28 +0000 (15:42 +0200)]
Support standard opcodes, improve the whole setup for emitting line info
Petr Machata [Wed, 9 Sep 2009 13:40:23 +0000 (15:40 +0200)]
dwarflint: Used wrong formatter for DW_LNS_ opcodes
* add the right formatter to dwarfstrings.[ch]
Petr Machata [Wed, 9 Sep 2009 13:33:24 +0000 (15:33 +0200)]
Fix typos
Petr Machata [Tue, 8 Sep 2009 18:45:58 +0000 (20:45 +0200)]
Some support for emitting .debug_line opcodes
Petr Machata [Tue, 8 Sep 2009 16:02:59 +0000 (18:02 +0200)]
Emit .debug_line with empty program for each table
Petr Machata [Tue, 8 Sep 2009 15:44:42 +0000 (17:44 +0200)]
dwarflint: Always emit error about missing DW_LNE_end_sequence
* ... even if there were no opcodes, because the no-opcodes message can
be filtered out.
Petr Machata [Tue, 8 Sep 2009 12:15:26 +0000 (14:15 +0200)]
dwarflint: Check address_size against bit-ness of ELF
* and extract the address-size reading and checking code into one function
* and drop the check that all CUs have the same address size, now that
we check everything against bit-ness of ELF, we don't need it anymore.
Petr Machata [Tue, 8 Sep 2009 11:03:33 +0000 (13:03 +0200)]
Fix whitespace in Makefile
Petr Machata [Tue, 8 Sep 2009 11:03:06 +0000 (13:03 +0200)]
expr_opcodes.h will hold more general information about opcodes
Petr Machata [Mon, 7 Sep 2009 20:27:21 +0000 (22:27 +0200)]
Extract length computation logic to length_field class
Petr Machata [Mon, 7 Sep 2009 15:43:30 +0000 (17:43 +0200)]
Fixes for dwarf_64
Petr Machata [Mon, 7 Sep 2009 14:04:43 +0000 (16:04 +0200)]
Generalize DIE tree traversal
Petr Machata [Thu, 3 Sep 2009 13:54:40 +0000 (15:54 +0200)]
Bits
Petr Machata [Thu, 3 Sep 2009 12:44:26 +0000 (14:44 +0200)]
Rework section creation in writer.cc, plug leaks
Petr Machata [Thu, 3 Sep 2009 10:56:22 +0000 (12:56 +0200)]
Merge branch 'dwarf' into pmachata/dwarf-writer
Roland McGrath [Wed, 2 Sep 2009 18:12:51 +0000 (11:12 -0700)]
Fiddles in subr::sharing_stack.
Petr Machata [Wed, 2 Sep 2009 16:43:35 +0000 (18:43 +0200)]
Prune duplicate abbrevs
Petr Machata [Wed, 2 Sep 2009 15:50:59 +0000 (17:50 +0200)]
Don't use DIE backpatching mechanism to resolve siblings
Petr Machata [Wed, 2 Sep 2009 15:07:25 +0000 (17:07 +0200)]
dwarflint: Fix wording of sibling mismatch error message
Petr Machata [Wed, 2 Sep 2009 14:28:30 +0000 (16:28 +0200)]
forgot to return before the exception is thrown after sdata is written
Petr Machata [Wed, 2 Sep 2009 14:27:22 +0000 (16:27 +0200)]
dwarflint: Support --dump-offsets
... I use it so much that it's probably worth it to have it in the repo,
instead of hacking it in ad-hoc each time I need it.
Petr Machata [Wed, 2 Sep 2009 14:26:07 +0000 (16:26 +0200)]
dwarflint: Output sibling mismatch with offset of the right DIE
Petr Machata [Wed, 2 Sep 2009 11:07:01 +0000 (13:07 +0200)]
Merge commit 'origin/dwarf' into pmachata/dwarf-writer
Petr Machata [Wed, 2 Sep 2009 11:06:26 +0000 (13:06 +0200)]
Don't emit empty .debug_str
(however unlikely that situation is)
Roland McGrath [Tue, 1 Sep 2009 23:20:39 +0000 (16:20 -0700)]
Reduce memory footprint of dwarf_tracker.
Roland McGrath [Tue, 1 Sep 2009 22:37:17 +0000 (15:37 -0700)]
Reduce memory footprint of dwarf iterators.
Roland McGrath [Tue, 1 Sep 2009 02:21:08 +0000 (19:21 -0700)]
Add specialized dynamic_equality_set class for attributes in the collector.
Petr Machata [Mon, 31 Aug 2009 13:06:27 +0000 (15:06 +0200)]
Presence of siblings is emitted correctly
* ... some still have broken offsets
Petr Machata [Mon, 31 Aug 2009 13:01:06 +0000 (15:01 +0200)]
Merge nit
Petr Machata [Mon, 31 Aug 2009 11:42:15 +0000 (13:42 +0200)]
Merge branch 'dwarf' into pmachata/dwarf-writer
Conflicts:
libdw/c++/dwarf_output
tests/Makefile.am
Roland McGrath [Fri, 28 Aug 2009 22:26:24 +0000 (15:26 -0700)]
Fiddle stats output.
Petr Machata [Fri, 28 Aug 2009 13:22:15 +0000 (15:22 +0200)]
Simplify further
* ... found an error in generating sibling attributes, not fixed yet.
Roland McGrath [Fri, 28 Aug 2009 01:30:04 +0000 (18:30 -0700)]
Split out dwarfcmp -T tests into dwarfcmp-test binary.
Roland McGrath [Fri, 28 Aug 2009 01:29:06 +0000 (18:29 -0700)]
Fiddle dwarf_output constructors.
Roland McGrath [Fri, 28 Aug 2009 00:53:30 +0000 (17:53 -0700)]
dwarf_output::copier fix for circular refs
Roland McGrath [Thu, 27 Aug 2009 17:32:58 +0000 (10:32 -0700)]
Add missing file.
Petr Machata [Thu, 27 Aug 2009 14:33:13 +0000 (16:33 +0200)]
More cleanups
Petr Machata [Thu, 27 Aug 2009 12:32:25 +0000 (14:32 +0200)]
Writer cleanups
Petr Machata [Wed, 26 Aug 2009 15:28:30 +0000 (17:28 +0200)]
Extract some stuff to `writer' class
* stuff related directly to writing is gathered here
Petr Machata [Wed, 26 Aug 2009 12:30:09 +0000 (14:30 +0200)]
Emit short strings inline
Roland McGrath [Wed, 26 Aug 2009 06:48:41 +0000 (23:48 -0700)]
Share print-die compilation among tests.
Roland McGrath [Wed, 26 Aug 2009 06:19:28 +0000 (23:19 -0700)]
Use some explicit template instantiations.
Roland McGrath [Wed, 26 Aug 2009 04:14:38 +0000 (21:14 -0700)]
Fix tracker circular ref handling for sharing differences. dwarfcmp -l improvements.
Roland McGrath [Mon, 24 Aug 2009 23:59:00 +0000 (16:59 -0700)]
Cosmetic.
Roland McGrath [Sat, 22 Aug 2009 00:41:16 +0000 (17:41 -0700)]
Add --silent option to dwarf-print et al.
Roland McGrath [Sat, 22 Aug 2009 00:23:59 +0000 (17:23 -0700)]
c++/subr.hh (hash<std::string>): Use elf_gnu_hash algorithm.
Petr Machata [Fri, 21 Aug 2009 20:22:21 +0000 (22:22 +0200)]
Works again
Roland McGrath [Fri, 21 Aug 2009 20:07:41 +0000 (13:07 -0700)]
Fiddle integer hashers.
Petr Machata [Fri, 21 Aug 2009 14:38:19 +0000 (16:38 +0200)]
Merge commit 'origin/dwarf' into pmachata/dwarf-writer
Roland McGrath [Fri, 21 Aug 2009 09:15:30 +0000 (02:15 -0700)]
Optimize dwarf_output copying of strings and source_files with a copier cache.
Roland McGrath [Fri, 21 Aug 2009 02:42:44 +0000 (19:42 -0700)]
Fix to_string for constant-block case.
Roland McGrath [Fri, 21 Aug 2009 02:41:34 +0000 (19:41 -0700)]
Fix --enable-gprof for C++.
Petr Machata [Thu, 20 Aug 2009 15:45:18 +0000 (17:45 +0200)]
It compiles, but is broken: we never create shapes
* more ways of brokenness to come when the above gets fixed ;)
Petr Machata [Thu, 20 Aug 2009 12:58:26 +0000 (14:58 +0200)]
Revert "Hack around invalid iterator problems"
... in preparation to merge
Petr Machata [Thu, 20 Aug 2009 12:43:50 +0000 (14:43 +0200)]
Fix emitting some VSs
Petr Machata [Thu, 20 Aug 2009 12:03:52 +0000 (14:03 +0200)]
Add `attr' parameter to form_constaint_t::satisfied
Roland McGrath [Thu, 20 Aug 2009 08:19:17 +0000 (01:19 -0700)]
Add dwarfcmp -l to show all differences.
Roland McGrath [Thu, 20 Aug 2009 05:03:58 +0000 (22:03 -0700)]
Diagnose reference mismatches with more detail.
Roland McGrath [Thu, 20 Aug 2009 04:22:35 +0000 (21:22 -0700)]
Merge branch 'dwarf' of ssh://git.fedorahosted.org/git/elfutils into dwarf
Roland McGrath [Thu, 20 Aug 2009 04:22:24 +0000 (21:22 -0700)]
dwarf_output construction revamp for ref handling.
Petr Machata [Wed, 19 Aug 2009 18:45:47 +0000 (20:45 +0200)]
Work on abbrev generation
Petr Machata [Wed, 19 Aug 2009 18:25:54 +0000 (20:25 +0200)]
dwarflint: Support DW_FORM_flag_present
Petr Machata [Wed, 19 Aug 2009 13:47:15 +0000 (15:47 +0200)]
dwarflint: Reorganize data structures
* ... to elimiate holes where possible
* and get rid of dwarf_64/addr_64, use offset_size/address_size instead
* also DW_FORM_ref_addr now has address_size in dwarf 2
Petr Machata [Wed, 19 Aug 2009 11:36:50 +0000 (13:36 +0200)]
dwarflint: Allow DW_FORM_sec_offset as a form in rangeptr and lineptr
Petr Machata [Tue, 18 Aug 2009 18:32:26 +0000 (20:32 +0200)]
dwarflint: Consolidate checking and relocation of attribute values
* This was done to add DW_FORM_sec_offset, but the structure of the code
wasn't such that would make this addition easy. The revamp ended up
being quite extensive, and I never got around to checking whether the
support for the new form really works.
* Checked on all elfutils ELF files that old and new dwarflint emit the
same messages.
Roland McGrath [Mon, 17 Aug 2009 05:56:53 +0000 (22:56 -0700)]
Plug leaks.
Roland McGrath [Mon, 17 Aug 2009 05:22:51 +0000 (22:22 -0700)]
Add dwarf::debug_info_entry::identity_type typedef, make it uintptr_t instead of Dwarf_Off.
Petr Machata [Thu, 13 Aug 2009 19:15:28 +0000 (21:15 +0200)]
Cosmetic bit
Petr Machata [Tue, 11 Aug 2009 16:58:37 +0000 (18:58 +0200)]
Reindent one function
- left it unindented in previous commits to make (lack of) changes
clearly visible
Petr Machata [Tue, 11 Aug 2009 16:57:36 +0000 (18:57 +0200)]
Support gaps that need to output patch value non-verbatim
- use that to fix wrong sibling references in multi-CU files
- perhaps will be useful for emitting relocations?
Petr Machata [Tue, 11 Aug 2009 15:19:38 +0000 (17:19 +0200)]
Support DW_FORM_bock VS_constant data
Petr Machata [Tue, 11 Aug 2009 14:45:41 +0000 (16:45 +0200)]
Initialize d_off, some nits
Petr Machata [Mon, 10 Aug 2009 14:36:39 +0000 (16:36 +0200)]
Simplify creation of new sections in writer.cc
Petr Machata [Mon, 10 Aug 2009 12:26:05 +0000 (14:26 +0200)]
Handle endians
Petr Machata [Fri, 7 Aug 2009 15:46:24 +0000 (17:46 +0200)]
Merge branch 'dwarf' into pmachata/dwarf-writer
Petr Machata [Fri, 7 Aug 2009 15:45:57 +0000 (17:45 +0200)]
Emit siblings
Petr Machata [Thu, 6 Aug 2009 15:50:19 +0000 (17:50 +0200)]
dwarflint: For CU version 2, DW_FORM_ref_addr is addr_64, for 3 it's dwarf_64
Petr Machata [Thu, 6 Aug 2009 15:49:00 +0000 (17:49 +0200)]
dwarflint: Re-fix check for missing DW_AT_sibling
Petr Machata [Thu, 6 Aug 2009 14:58:18 +0000 (16:58 +0200)]
dwarflint: Use better wording for DW_FORM_strp vs. empty/missing .debug_str
Petr Machata [Thu, 6 Aug 2009 14:41:16 +0000 (16:41 +0200)]
Emitting valid .debug_str, backpatching more general now
Petr Machata [Thu, 6 Aug 2009 13:13:44 +0000 (15:13 +0200)]
Encapsulate the string table