rdwarf 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +16 -0
- data/.travis.yml +4 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +28 -0
- data/README.md +39 -0
- data/Rakefile +8 -0
- data/bin/console +14 -0
- data/bin/setup +7 -0
- data/ext/rdwarf/depend +5 -0
- data/ext/rdwarf/extconf.rb +29 -0
- data/ext/rdwarf/libdwarf/CHANGES +102 -0
- data/ext/rdwarf/libdwarf/CODINGSTYLE +71 -0
- data/ext/rdwarf/libdwarf/COPYING +28 -0
- data/ext/rdwarf/libdwarf/ChangeLog +619 -0
- data/ext/rdwarf/libdwarf/ChangeLog2006 +835 -0
- data/ext/rdwarf/libdwarf/ChangeLog2007 +217 -0
- data/ext/rdwarf/libdwarf/ChangeLog2008 +263 -0
- data/ext/rdwarf/libdwarf/ChangeLog2009 +348 -0
- data/ext/rdwarf/libdwarf/ChangeLog2010 +175 -0
- data/ext/rdwarf/libdwarf/ChangeLog2011 +297 -0
- data/ext/rdwarf/libdwarf/ChangeLog2012 +131 -0
- data/ext/rdwarf/libdwarf/ChangeLog2013 +238 -0
- data/ext/rdwarf/libdwarf/ChangeLog2014 +399 -0
- data/ext/rdwarf/libdwarf/LGPL.txt +504 -0
- data/ext/rdwarf/libdwarf/LIBDWARFCOPYRIGHT +40 -0
- data/ext/rdwarf/libdwarf/Makefile.in +220 -0
- data/ext/rdwarf/libdwarf/NEWS +535 -0
- data/ext/rdwarf/libdwarf/README +235 -0
- data/ext/rdwarf/libdwarf/checkexamples.c +1179 -0
- data/ext/rdwarf/libdwarf/cmplrs/dwarf_addr_finder.h +55 -0
- data/ext/rdwarf/libdwarf/common.c +62 -0
- data/ext/rdwarf/libdwarf/common.h +38 -0
- data/ext/rdwarf/libdwarf/config.h.in +146 -0
- data/ext/rdwarf/libdwarf/configure +5581 -0
- data/ext/rdwarf/libdwarf/configure.in +167 -0
- data/ext/rdwarf/libdwarf/dw-linetableheader.txt +39 -0
- data/ext/rdwarf/libdwarf/dwarf.h +1342 -0
- data/ext/rdwarf/libdwarf/dwarf_abbrev.c +291 -0
- data/ext/rdwarf/libdwarf/dwarf_abbrev.h +45 -0
- data/ext/rdwarf/libdwarf/dwarf_addr_finder.c +676 -0
- data/ext/rdwarf/libdwarf/dwarf_alloc.c +685 -0
- data/ext/rdwarf/libdwarf/dwarf_alloc.h +38 -0
- data/ext/rdwarf/libdwarf/dwarf_arange.c +595 -0
- data/ext/rdwarf/libdwarf/dwarf_arange.h +62 -0
- data/ext/rdwarf/libdwarf/dwarf_base_types.h +157 -0
- data/ext/rdwarf/libdwarf/dwarf_die_deliv.c +1802 -0
- data/ext/rdwarf/libdwarf/dwarf_die_deliv.h +46 -0
- data/ext/rdwarf/libdwarf/dwarf_elf_access.c +1348 -0
- data/ext/rdwarf/libdwarf/dwarf_elf_access.h +46 -0
- data/ext/rdwarf/libdwarf/dwarf_error.c +492 -0
- data/ext/rdwarf/libdwarf/dwarf_error.h +53 -0
- data/ext/rdwarf/libdwarf/dwarf_form.c +1302 -0
- data/ext/rdwarf/libdwarf/dwarf_frame.c +2454 -0
- data/ext/rdwarf/libdwarf/dwarf_frame.h +418 -0
- data/ext/rdwarf/libdwarf/dwarf_frame2.c +1533 -0
- data/ext/rdwarf/libdwarf/dwarf_frame3.c +282 -0
- data/ext/rdwarf/libdwarf/dwarf_funcs.c +123 -0
- data/ext/rdwarf/libdwarf/dwarf_funcs.h +33 -0
- data/ext/rdwarf/libdwarf/dwarf_gdbindex.c +520 -0
- data/ext/rdwarf/libdwarf/dwarf_gdbindex.h +97 -0
- data/ext/rdwarf/libdwarf/dwarf_global.c +612 -0
- data/ext/rdwarf/libdwarf/dwarf_global.h +117 -0
- data/ext/rdwarf/libdwarf/dwarf_harmless.c +228 -0
- data/ext/rdwarf/libdwarf/dwarf_harmless.h +31 -0
- data/ext/rdwarf/libdwarf/dwarf_incl.h +61 -0
- data/ext/rdwarf/libdwarf/dwarf_init_finish.c +1263 -0
- data/ext/rdwarf/libdwarf/dwarf_leb.c +159 -0
- data/ext/rdwarf/libdwarf/dwarf_line.c +1822 -0
- data/ext/rdwarf/libdwarf/dwarf_line.h +446 -0
- data/ext/rdwarf/libdwarf/dwarf_line2.c +98 -0
- data/ext/rdwarf/libdwarf/dwarf_line_table_reader_common.c +1583 -0
- data/ext/rdwarf/libdwarf/dwarf_loc.c +1525 -0
- data/ext/rdwarf/libdwarf/dwarf_loc.h +149 -0
- data/ext/rdwarf/libdwarf/dwarf_loc2.c +833 -0
- data/ext/rdwarf/libdwarf/dwarf_macro.c +479 -0
- data/ext/rdwarf/libdwarf/dwarf_macro.h +35 -0
- data/ext/rdwarf/libdwarf/dwarf_opaque.h +778 -0
- data/ext/rdwarf/libdwarf/dwarf_original_elf_init.c +219 -0
- data/ext/rdwarf/libdwarf/dwarf_print_lines.c +631 -0
- data/ext/rdwarf/libdwarf/dwarf_pubtypes.c +132 -0
- data/ext/rdwarf/libdwarf/dwarf_query.c +1594 -0
- data/ext/rdwarf/libdwarf/dwarf_ranges.c +194 -0
- data/ext/rdwarf/libdwarf/dwarf_reloc_arm.h +308 -0
- data/ext/rdwarf/libdwarf/dwarf_reloc_mips.h +117 -0
- data/ext/rdwarf/libdwarf/dwarf_reloc_ppc.h +242 -0
- data/ext/rdwarf/libdwarf/dwarf_reloc_ppc64.h +272 -0
- data/ext/rdwarf/libdwarf/dwarf_reloc_x86_64.h +127 -0
- data/ext/rdwarf/libdwarf/dwarf_sort_line.c +665 -0
- data/ext/rdwarf/libdwarf/dwarf_string.c +82 -0
- data/ext/rdwarf/libdwarf/dwarf_stubs.c +38 -0
- data/ext/rdwarf/libdwarf/dwarf_tied.c +423 -0
- data/ext/rdwarf/libdwarf/dwarf_tsearch.h +125 -0
- data/ext/rdwarf/libdwarf/dwarf_tsearchhash.c +675 -0
- data/ext/rdwarf/libdwarf/dwarf_types.c +121 -0
- data/ext/rdwarf/libdwarf/dwarf_types.h +32 -0
- data/ext/rdwarf/libdwarf/dwarf_util.c +913 -0
- data/ext/rdwarf/libdwarf/dwarf_util.h +324 -0
- data/ext/rdwarf/libdwarf/dwarf_vars.c +125 -0
- data/ext/rdwarf/libdwarf/dwarf_vars.h +29 -0
- data/ext/rdwarf/libdwarf/dwarf_weaks.c +123 -0
- data/ext/rdwarf/libdwarf/dwarf_weaks.h +29 -0
- data/ext/rdwarf/libdwarf/dwarf_xu_index.c +579 -0
- data/ext/rdwarf/libdwarf/dwarf_xu_index.h +68 -0
- data/ext/rdwarf/libdwarf/dwgetopt.c +181 -0
- data/ext/rdwarf/libdwarf/dwgetopt.h +51 -0
- data/ext/rdwarf/libdwarf/gennames.c +531 -0
- data/ext/rdwarf/libdwarf/install.sh +119 -0
- data/ext/rdwarf/libdwarf/libdwarf.h.in +3746 -0
- data/ext/rdwarf/libdwarf/libdwarf2.1.mm +9805 -0
- data/ext/rdwarf/libdwarf/libdwarf2.1.pdf +0 -0
- data/ext/rdwarf/libdwarf/libdwarf2p.1.mm +2807 -0
- data/ext/rdwarf/libdwarf/libdwarf2p.1.pdf +0 -0
- data/ext/rdwarf/libdwarf/libdwarfdefs.h +81 -0
- data/ext/rdwarf/libdwarf/malloc_check.c +327 -0
- data/ext/rdwarf/libdwarf/malloc_check.h +52 -0
- data/ext/rdwarf/libdwarf/mips_extensions.mm +1266 -0
- data/ext/rdwarf/libdwarf/mips_extensions.pdf +0 -0
- data/ext/rdwarf/libdwarf/pro_alloc.c +179 -0
- data/ext/rdwarf/libdwarf/pro_alloc.h +33 -0
- data/ext/rdwarf/libdwarf/pro_arange.c +310 -0
- data/ext/rdwarf/libdwarf/pro_arange.h +51 -0
- data/ext/rdwarf/libdwarf/pro_die.c +431 -0
- data/ext/rdwarf/libdwarf/pro_die.h +59 -0
- data/ext/rdwarf/libdwarf/pro_encode_nm.c +108 -0
- data/ext/rdwarf/libdwarf/pro_encode_nm.h +39 -0
- data/ext/rdwarf/libdwarf/pro_error.c +96 -0
- data/ext/rdwarf/libdwarf/pro_error.h +43 -0
- data/ext/rdwarf/libdwarf/pro_expr.c +575 -0
- data/ext/rdwarf/libdwarf/pro_expr.h +36 -0
- data/ext/rdwarf/libdwarf/pro_finish.c +45 -0
- data/ext/rdwarf/libdwarf/pro_forms.c +1271 -0
- data/ext/rdwarf/libdwarf/pro_frame.c +572 -0
- data/ext/rdwarf/libdwarf/pro_frame.h +120 -0
- data/ext/rdwarf/libdwarf/pro_funcs.c +50 -0
- data/ext/rdwarf/libdwarf/pro_incl.h +91 -0
- data/ext/rdwarf/libdwarf/pro_init.c +327 -0
- data/ext/rdwarf/libdwarf/pro_line.c +373 -0
- data/ext/rdwarf/libdwarf/pro_line.h +112 -0
- data/ext/rdwarf/libdwarf/pro_macinfo.c +457 -0
- data/ext/rdwarf/libdwarf/pro_macinfo.h +31 -0
- data/ext/rdwarf/libdwarf/pro_opaque.h +513 -0
- data/ext/rdwarf/libdwarf/pro_pubnames.c +60 -0
- data/ext/rdwarf/libdwarf/pro_reloc.c +253 -0
- data/ext/rdwarf/libdwarf/pro_reloc.h +38 -0
- data/ext/rdwarf/libdwarf/pro_reloc_stream.c +256 -0
- data/ext/rdwarf/libdwarf/pro_reloc_stream.h +52 -0
- data/ext/rdwarf/libdwarf/pro_reloc_symbolic.c +245 -0
- data/ext/rdwarf/libdwarf/pro_reloc_symbolic.h +45 -0
- data/ext/rdwarf/libdwarf/pro_section.c +2233 -0
- data/ext/rdwarf/libdwarf/pro_section.h +100 -0
- data/ext/rdwarf/libdwarf/pro_types.c +274 -0
- data/ext/rdwarf/libdwarf/pro_types.h +34 -0
- data/ext/rdwarf/libdwarf/pro_util.h +38 -0
- data/ext/rdwarf/libdwarf/pro_vars.c +52 -0
- data/ext/rdwarf/libdwarf/pro_weaks.c +51 -0
- data/ext/rdwarf/rdwarf.c +765 -0
- data/ext/rdwarf/rdwarf.h +52 -0
- data/ext/rdwarf/rdwarf_names_gen.rb +109 -0
- data/lib/rdwarf.rb +181 -0
- data/lib/rdwarf/version.rb +3 -0
- data/rdwarf.gemspec +30 -0
- metadata +251 -0
@@ -0,0 +1,217 @@
|
|
1
|
+
2007-12-09 DavidAnderson <davea42@earthlink.net>
|
2
|
+
* dwarf_sort_line.c dwarf_print_lines.c darf_frame.c: Forgot
|
3
|
+
to commit yesterday.
|
4
|
+
Today's commit includes renaming _dwarf_fde_section_offset
|
5
|
+
_dwarf_cie_section_offset, _dwarf_print_lines, _dwarf_ld_sort_lines
|
6
|
+
to dwarf_* name while retaining support for the now obsolete
|
7
|
+
_dwarf_* form.
|
8
|
+
2007-12-08 DavidAnderson <davea42@earthlink.net>
|
9
|
+
* config.h.in, configure.in: Latest linux libelf.h requires
|
10
|
+
_GNU_SOURCE to get off64_t defined so dwarfdump compiles.
|
11
|
+
Only define _GNU_SOURCE if libelf.h defines off64_t.
|
12
|
+
Regenerated configure.
|
13
|
+
* config.guess, config.sub: Updated to 2.61
|
14
|
+
* acconfig.h: Deleted, removing autoconf complaint.
|
15
|
+
2007-11-14 David Anderson <davea42@earthlink.net>
|
16
|
+
* dwarf_frame2.c (gnu_aug_encodings): Now allows 'S' augmentation
|
17
|
+
character in eh_frame.
|
18
|
+
2007-10-16 David Anderson <davea42@earthlink.net>
|
19
|
+
* dwarf_alloc.c: Reformat a comment.
|
20
|
+
* dwarf_die_deliv.c (dwarf_siblingof): When there is no trailing
|
21
|
+
null-DIE in the section, ensure we don't test the contents
|
22
|
+
of a byte past section end.
|
23
|
+
* dwarf_frame.c: Changed spelling of a local variable
|
24
|
+
so it is easier to grep for and to read.
|
25
|
+
* dwarf_macro.c (free_macro_stack): Was free()ing memory that
|
26
|
+
_dwarf_get_alloc() had supplied, which could lead to core dump.
|
27
|
+
Fixed potential memory leaks (said leaks only possible with an
|
28
|
+
error in the macro data, not with valid macro section
|
29
|
+
data).
|
30
|
+
2007-10-15 David Anderson <davea42@earthlink.net>
|
31
|
+
* dwarf_alloc.c: The code supporting the special build
|
32
|
+
flag DWARF_SIMPLE_MALLOC
|
33
|
+
was broken and could coredump libdwarf
|
34
|
+
(which did not affect normal use of libdwarf).
|
35
|
+
* dwarf_opaque.h: Remove the field de_simple_malloc_current
|
36
|
+
as it is no longer used.
|
37
|
+
|
38
|
+
2007-09-04 David Anderson <davea42@earthlink.net>
|
39
|
+
* pro_forms.c: Add commentary relating to the
|
40
|
+
recent DWARF4 DW_AT_high_pc change.
|
41
|
+
Correct FSF address.
|
42
|
+
* libdwarf2p.1.mm: Document dwarf_add_AT_dataref()
|
43
|
+
and dwarf_add_AT_ref_address().
|
44
|
+
* libdwarf2p.1.pdf: Regenerate.
|
45
|
+
* dwarf.h: Update FSF address.
|
46
|
+
* dwarf_opaque.h: Add DWARF4 entry (version stamp).
|
47
|
+
Update FSF address.
|
48
|
+
* dwarf_die_deliv.c: Add check for .debug_info version 4
|
49
|
+
(version stamp). Update FSF address.
|
50
|
+
* libdwarf.h pro_macinfo.h pro_line.h dwarf_incl.h
|
51
|
+
pro_alloc.h pro_section.h libdwarfdefs.h pro_util.h
|
52
|
+
dwarf_vars.h dwarf_funcs.h pro_error.h dwarf_alloc.h pro_arange.h
|
53
|
+
dwarf_arange.h pro_die.h dwarf_global.h pro_expr.h
|
54
|
+
pro_reloc_stream.h pro_incl.h pro_encode_nm.h
|
55
|
+
dwarf_line.h pro_frame.h pro_opaque.h dwarf_error.h
|
56
|
+
dwarf_base_types.h dwarf_abbrev.h pro_types.h pro_reloc_symbolic.h
|
57
|
+
dwarf_weaks.h dwarf_util.h dwarf_loc.h malloc_check.h
|
58
|
+
dwarf_die_deliv.h acconfig.h dwarf_frame.h dwarf_macro.h
|
59
|
+
pro_reloc.h dwarf_types.h
|
60
|
+
pro_funcs.c Makefile.in pro_forms.c pro_line.c
|
61
|
+
dwarf_print_lines.c pro_alloc.c pro_init.c dwarf_addr_finder.c
|
62
|
+
pro_section.c dwarf_form.c dwarf_query.c dwarf_vars.c
|
63
|
+
dwarf_pubtypes.c dwarf_frame3.c dwarf_funcs.c pro_error.c
|
64
|
+
pro_arange.c dwarf_alloc.c dwarf_arange.c pro_die.c
|
65
|
+
dwarf_sort_line.c dwarf_global.c dwarf_init_finish.c pro_weaks.c
|
66
|
+
pro_pubnames.c pro_expr.c pro_reloc_stream.c pro_finish.c
|
67
|
+
pro_encode_nm.c dwarf_line.c pro_frame.c dwarf_error.c
|
68
|
+
dwarf_abbrev.c pro_types.c dwarf_leb.c pro_reloc_symbolic.c
|
69
|
+
dwarf_string.c pro_vars.c dwarf_line2.c dwarf_weaks.c
|
70
|
+
dwarf_frame2.c dwarf_util.c dwarf_loc.c LIBDWARFCOPYRIGHT
|
71
|
+
malloc_check.c dwarf_die_deliv.c dwarf_frame.c dwarf_stubs.c
|
72
|
+
dwarf_macro.c pro_reloc.c dwarf_types.c pro_macinfo.c:
|
73
|
+
Update FSF address.
|
74
|
+
2007-07-26 David Anderson <davea42@earthlink.net>
|
75
|
+
* pro_frame.c: Added commentary about some missing DWARF3 support.
|
76
|
+
* dwarf_srclines_dealloc.c: File unused, now deleted.
|
77
|
+
2007-07-04 David Anderson <davea42@earthlink.net>
|
78
|
+
* libdwarf.h: dwarf_get_loclist_entry() is implemented,
|
79
|
+
removed the erroneous 'unimplemented' comment.
|
80
|
+
* libdwarf2.1.mm: Improved the dwarf_get_loclist_entry()
|
81
|
+
documentation.
|
82
|
+
* libdwarf2.1.pdf: regenerated
|
83
|
+
* dwarf_loclist_entry.c: Removed from distribution, the
|
84
|
+
source has nothing of interest.
|
85
|
+
|
86
|
+
2007-07-03 David Anderson <davea42@earthlink.net>
|
87
|
+
* libdwarf.h: Add declaration of dwarf_loclist_from_expr();
|
88
|
+
* dwarf_loc.c: Implement dwarf_loclist_from_expr() and add
|
89
|
+
sign-extension macro calls to case DW_OP_const4s numbers.
|
90
|
+
Removed unused local variables.
|
91
|
+
* dwarf_form.c: Removed unused local variables.
|
92
|
+
* libdwarf2.1.mm: Document dwarf_loclist_from_expr().
|
93
|
+
* libdwarf2.1.pdf: Regenerated.
|
94
|
+
2007-07-01 David Anderson <davea42@earthlink.net>
|
95
|
+
* dwarf_frame2.c: Add commentary.
|
96
|
+
* dwarf_frame.c: Add in block_len for DW_CFA_val_expression
|
97
|
+
so libdwarf does not get confused by this frame expression
|
98
|
+
operator. Thanks to Cristian Vlasceanu for providing
|
99
|
+
a test case.
|
100
|
+
2007-06-29 David Anderson <davea42@earthlink.net>
|
101
|
+
* README: added a note that a few warnings about conversions
|
102
|
+
from pointer to integer are normal at libdwarf compile time.
|
103
|
+
2007-05-25 David Anderson <davea42@earthlink.net>
|
104
|
+
* dwarf_frame2.c (_dwarf_get_fde_list_internal):
|
105
|
+
Correct cie-list-creation so it adds to the tail of the list.
|
106
|
+
gcc 4.1.2 generates cie-use in an order the code did
|
107
|
+
not properly handle.
|
108
|
+
2007-05-08 David Anderson <davea42@earthlink.net>
|
109
|
+
* Makefile.in: Now generates pdf files.
|
110
|
+
* mips_extensions.mm: The only changes were to eliminate
|
111
|
+
unsupported macro (.PM) and to try to get correct output
|
112
|
+
from groff. No technical content change intended.
|
113
|
+
The pdf/postscript output remains a little odd though.
|
114
|
+
* libdwarf2.1.mm: Remove troff comment line.
|
115
|
+
2007-04-18 Chris Quenelle <chris.quenelle@sun.com>
|
116
|
+
* dwarf_addr_finder.c: repaired comment
|
117
|
+
* dwarf_form.c: add support for DW_AT_SUN_func_offsets
|
118
|
+
* pro_alloc.c: add memory block tracking to find and fix
|
119
|
+
lingering allocations. This is more important for very large
|
120
|
+
and intensive compiles.
|
121
|
+
* pro_die.c: Implement "markers" which are a generic way to
|
122
|
+
do things like relocations. You can set a marker on any
|
123
|
+
die, and when dwarf is produced in binary form, you get back
|
124
|
+
a list of your markers with the offset of each one in the binary
|
125
|
+
output. This is used by the Sun compilers to implement die
|
126
|
+
references that span compile unit blocks. (I may remove this,
|
127
|
+
it might be unused code related to partial_units and comdat
|
128
|
+
support)
|
129
|
+
* pro_die.c: Also check for loops in the die relationships so
|
130
|
+
that if you add a child twice, or other errors, you won't get
|
131
|
+
an infinite loop or a crash. Also start passing a DBG structure
|
132
|
+
to all allocation calls to help with memory block tracking.
|
133
|
+
* pro_expr.c: Add a public function to "reset" an expr. This
|
134
|
+
allows the same expr object to be reused over and over to save
|
135
|
+
memory if you're creating many many expressions for a location list.
|
136
|
+
* pro_finish.c: Free any left over blocks when the user calls
|
137
|
+
dwarf_producer_finish.
|
138
|
+
* pro_forms.c: More support for compressed integer blocks. Modify
|
139
|
+
error diagnostics so that user-defined attributes can be any type.
|
140
|
+
Add support for dwarf_add_AT_ref_address which is just like
|
141
|
+
dwarf_add_AT_address, only it produces a DW_FORM_ref_addr instead
|
142
|
+
of DW_FORM_addr. This is needed for cross-CU die pointers.
|
143
|
+
* pro_incl.h: add macros to control the spelling of relocation types.
|
144
|
+
* pro_init.c: use new macros to control reloc types
|
145
|
+
* pro_line.h: correct minimum instruction length on x86
|
146
|
+
* pro_opaque.h: add support for markers (see above) and also ability
|
147
|
+
have libdwarf tell the caller where the string constants are so
|
148
|
+
that they can be recorded as strings in case the binary output of libdwarf
|
149
|
+
needs to be converted back into assembly. That's what
|
150
|
+
Dwarf_P_Per_Sect_String_Attrs is about.
|
151
|
+
Remove de_mem_list as it is never used.
|
152
|
+
* pro_reloc_stream.c: repair prototype and comment for
|
153
|
+
_dwarf_pro_reloc_name_stream64, and use relocation type macros.
|
154
|
+
* pro_section.c: support for markers (see above) and for tracking
|
155
|
+
inline string attributes. Add code to sort the attributes so that
|
156
|
+
abbreviation table entries will be reduced. Change treatment of
|
157
|
+
DW_FORM_ref_addr to be more correct. Some support for packing
|
158
|
+
in the middle of sections, this will probably be removed.
|
159
|
+
Also pass DBg structure to more allocations.
|
160
|
+
* pro_util.h: relocation type values can't be zero.
|
161
|
+
2007-04-10 David Anderson <davea42@earthlink.net
|
162
|
+
* dwarf_print_lines.c pro_section.c dwarf_query.c
|
163
|
+
dwarf_alloc.c dwarf_arange.c dwarf_sort_line.c
|
164
|
+
dwarf_global.c dwarf_line.c dwarf_abbrev.c
|
165
|
+
dwarf_frame2.c dwarf_util.c dwarf_loc.c dwarf_util.h
|
166
|
+
dwarf_die_deliv.c dwarf_frame.c dwarf_macro.c: Additions
|
167
|
+
to source for year 2007 now fit in with pre-existing
|
168
|
+
copyright wording. Effectively no change.
|
169
|
+
* dwarf_srclines_dealloc.c: Now has the (always-intended) SGI
|
170
|
+
LGPL copyright wording.
|
171
|
+
2007-04-09 David Anderson <davea42@earthlink.net
|
172
|
+
* dwarf_error.h: Add DW_DLE_LINK_LOOP error code (Sun).
|
173
|
+
* libdwarf.h: Add DW_DLE_LINK_LOOP error code (Sun).
|
174
|
+
* dwarf.h: Incorporate Sun extensions. Thanks to
|
175
|
+
Chris Quenelle at Sun Microsystems.
|
176
|
+
2007-04-06 David Anderson <davea42@earthlink.net
|
177
|
+
* dwarf_sort_line.c (_dwarf_update_line_sec): initialize
|
178
|
+
Dwarf_Debug_s struct. Thanks to Chris Quenelle of Sun Microsystems.
|
179
|
+
Also initialize other local variables.
|
180
|
+
2007-04-02 David Anderson <davea42@earthlink.net
|
181
|
+
* dwarf_form.c (dwarf_formsdata, dwarf_formudata): Use
|
182
|
+
Dwarf_sfixed in dwarf_formsdata, document need for casts,
|
183
|
+
Use Dwarf_Signed as type for READ_UNALIGNED macro use.
|
184
|
+
The only real correction here is for a 64bit long compiled
|
185
|
+
libdwarf reading 32bit dwarf_formsdata FORM_data4.
|
186
|
+
* dwarf_base_types.h: Now Dwarf_sfixed64 and Dwarf_ufixed64
|
187
|
+
are properly declared (so they are usable).
|
188
|
+
2007-03-11 David Anderson <davea42@earthlink.net
|
189
|
+
* Makefile.in: use groff to produce postscript.
|
190
|
+
* libdwarf2.1.mm libdwarf2.1.ps libdwarf2p.1.mm
|
191
|
+
libdwarf2p.1.ps: Clean up the introduction and history.
|
192
|
+
Add a non-restrictive copyright notice.
|
193
|
+
2007-02-23 David Anderson <davea42@earthlink.net
|
194
|
+
* dwarf_util.h: now the macros use do{} while(0)
|
195
|
+
* pro_forms.c dwarf_print_lines.c pro_section.c dwarf_query.c
|
196
|
+
dwarf_arange.c dwarf_sort_line.c dwarf_global.c dwarf_line.c
|
197
|
+
dwarf_abbrev.c dwarf_frame2.c dwarf_util.c dwarf_loc.c
|
198
|
+
dwarf_die_deliv.c dwarf_frame.c: Now have ;
|
199
|
+
after all dwarf_util.h macros. Also added local variable
|
200
|
+
initializations (compiler noticed).
|
201
|
+
* dwarf_macro.c: was missing include of <stdlib.h> for free()
|
202
|
+
declaration.
|
203
|
+
* dwarf_print_lines.c pro_section.c dwarf_query.c dwarf_alloc.c
|
204
|
+
dwarf_arange.c dwarf_sort_line.c dwarf_global.c dwarf_line.c
|
205
|
+
dwarf_abbrev.c dwarf_srclines_dealloc.c dwarf_frame2.c
|
206
|
+
dwarf_util.c dwarf_loc.c dwarf_die_deliv.c dwarf_frame.c
|
207
|
+
dwarf_macro.c: indent run with standard libdwarf options.
|
208
|
+
|
209
|
+
2007-02-20 David Anderson <davea42@earthlink.net
|
210
|
+
* dwarf_macro.c (dwarf_get_macro_details): Now call
|
211
|
+
dwarf_free_macro_stack() at every return so no data
|
212
|
+
is leaked and there is no longer any global data
|
213
|
+
(restoring thread safety).
|
214
|
+
2007-02-09 David Anderson <davea42@earthlink.net
|
215
|
+
* dwarf_line.c (dwarf_srclines): Added in calls
|
216
|
+
to dwarf_free_line_table_prefix() which were omitted
|
217
|
+
by accident. Thanks to Cristian Vlasceanu for noticing.
|
@@ -0,0 +1,263 @@
|
|
1
|
+
2008-12-29 DavidAnderson <davea42@earthlink.net>
|
2
|
+
* libdwarf.h: Add support for .debug_ranges with
|
3
|
+
dwarf_get_ranges() and dwarf_ranges_dealloc().
|
4
|
+
* dwarf_init_finish.c: Add support for .debug_ranges.
|
5
|
+
* dwarf_base_types.h: Add support for .debug_ranges functions.
|
6
|
+
* dwarf_alloc.c, dwarf_alloc.h: Add support for .debug_ranges
|
7
|
+
alloc/dealloc.
|
8
|
+
* dwarf_opaque.h: Add support for .debug_ranges.
|
9
|
+
* libdwarf2.1.mm: Documented dwarf_get_ranges() and
|
10
|
+
dwarf_ranges_dealloc() (rev 1.72).
|
11
|
+
* libdwarf2.1.pdf: Regenerated.
|
12
|
+
2008-12-09 DavidAnderson <davea42@earthlink.net>
|
13
|
+
* dwarf_alloc.c: Remove useless comments and
|
14
|
+
tweak a few comments.
|
15
|
+
2008-12-08 DavidAnderson <davea42@earthlink.net>
|
16
|
+
* dwarf_opaque.h: Add di_abbrev_code field to record
|
17
|
+
a DIE abbreviation value so consumers can report it.
|
18
|
+
* libdwarf.h: Add dwarf_die_abbrev_code() interface.
|
19
|
+
* dwarf_query.c: Add dwarf_die_abbrev_code() interface.
|
20
|
+
* dwarf_die_deliv.c: Set di_abbrev_code for consumers.
|
21
|
+
* libdwarf2.1.mm: Documented dwarf_die_abbrev_code().
|
22
|
+
* libdwarf2.1.pdf: Regenerated.
|
23
|
+
* pro_util.h: Removed gratuitous tabs. Used a space instead.
|
24
|
+
2008-12-07 DavidAnderson <davea42@earthlink.net>
|
25
|
+
* dwarf.h: Entered DWARF4 defines known so far.
|
26
|
+
* dwarf_opaque.h: Updated dwarf 4 section-version comment
|
27
|
+
with the latest info.
|
28
|
+
2008-12-07 DavidAnderson <davea42@earthlink.net>
|
29
|
+
* dwarf_original_elf_init.c: Delete unused local variables.
|
30
|
+
* pro_forms.c: Delete unused local variables and initialize
|
31
|
+
local variables at definition.
|
32
|
+
* dwarf_pubtypes.c, dwarf_line.c: Delete accidental
|
33
|
+
duplicated /* comment-start.
|
34
|
+
* malloc_check.c: In the 'do nothing' case, create
|
35
|
+
an extern declaration to eliminate a compiler warning.
|
36
|
+
2008-11-19 DavidAnderson <davea42@earthlink.net>
|
37
|
+
* dwarf_die_deliv.c: Handle the case where DW_AT_sibling
|
38
|
+
uses DW_FORM_ref_addr.
|
39
|
+
* dwarf_util.c: Add a comment about DW_FORM_ref_addr.
|
40
|
+
* dwarf_opaque.h: Add a comment about CU fields,
|
41
|
+
comment out an unused CU header field.
|
42
|
+
* dwarf_query.c: Added dwarf_die_CU_offset_range()
|
43
|
+
so dwarfdump can check for additional errors.
|
44
|
+
* dwarf_form.c: Clarifying a comment.
|
45
|
+
* dwarf_print_lines.c: Add additional print detail on
|
46
|
+
line table headers (used by dwarfdump).
|
47
|
+
* libdwarf2.1.mm: Documenting the new function
|
48
|
+
dwarf_die_CU_offset_range().
|
49
|
+
* libdwarf2.1.pdf: Regenerated.
|
50
|
+
* libdwarf.h: Added dwarf_die_CU_offset_range() interface
|
51
|
+
declaration.
|
52
|
+
2008-10-13 DavidAnderson <davea42@earthlink.net>
|
53
|
+
* dwarf_frame2.c: Removed last use of DW_FRAME_LAST_REG_NUM:
|
54
|
+
use dbg->de_frame_reg_rules_entry_count instead.
|
55
|
+
2008-09-30 DavidAnderson <davea42@earthlink.net>
|
56
|
+
* dwarf_print_lines.c: Print corrected warning
|
57
|
+
about bogus prologue length.
|
58
|
+
* dwarf_line.c: Work around bogus prologue length
|
59
|
+
compiler bug.
|
60
|
+
* dwarf_line.h: Rename arguments.
|
61
|
+
2008-09-29 DavidAnderson <davea42@earthlink.net>
|
62
|
+
* libdwarf2.1.mm: Documented requirement that
|
63
|
+
dwarf_get_fde_n() dwarf_get_fde_at_pc() pass a
|
64
|
+
pointer to an fde table that contains at least 1 entry.
|
65
|
+
* libdwarf2.1.pdf: regenerated.
|
66
|
+
* dwarf_opaque.h: Add new fields for cie/fde specific
|
67
|
+
fields for eh.
|
68
|
+
* dwarf_frame2.c: Initialize the new Dwarf_debug and
|
69
|
+
Dwarf_Fde fields.
|
70
|
+
* dwarf_frame.c: Access the new Dwarf_Fde fields.
|
71
|
+
* dwarf_frame.h: Define a new Dwarf_Fde field so we
|
72
|
+
keep eh and non-eh distinct.
|
73
|
+
|
74
|
+
2008-09-29 DavidAnderson <davea42@earthlink.net>
|
75
|
+
* All .c files: Mechanically removed tab characters with
|
76
|
+
the expand tool.
|
77
|
+
2008-09-29 DavidAnderson <davea42@earthlink.net>
|
78
|
+
* libdwarf.h: DW_DLE_LINE_SET_ADDR_ERROR no longer used.
|
79
|
+
The tests which generated it were bogus.
|
80
|
+
* dwarf_print_lines.c: Print a warning if there are any
|
81
|
+
apparently wasted bytes after the line prologue and before
|
82
|
+
the line table instructions. Match the new prologue reading
|
83
|
+
function prototype.
|
84
|
+
* dwarf_sort_line.c: Match the new prologue reading function
|
85
|
+
prototype.
|
86
|
+
* dwarf_line.c: Modify the prologue reading function so
|
87
|
+
it correctly finds the beginning of instructions even
|
88
|
+
when there are 'wasted' bytes after the prologue.
|
89
|
+
Drop bogus tests for minimum-instruction-size
|
90
|
+
matching the ABI pointer size. Removing the tests removed
|
91
|
+
all uses of DW_DLE_LINE_SET_ADDR_ERROR.
|
92
|
+
* dwarf_line.h: Modify the prototype for the prologue reading
|
93
|
+
function so it is possible for a caller to know about the
|
94
|
+
possibly wasted bytes after a prologue.
|
95
|
+
2008-09-02 DavidAnderson <davea42@earthlink.net>
|
96
|
+
* dwarf_init_finish.c (_dwarf_setup): Delete unused local
|
97
|
+
variable 'section_error'.
|
98
|
+
2008-08-14 DavidAnderson <davea42@earthlink.net>
|
99
|
+
* libdwarf2p.1.mm: Make it clearer that dwarf_get_pubnames, dwarf_get_varnames,
|
100
|
+
etc return a result across all compilation units (an entire section),
|
101
|
+
not just for a single compilation unit. Document version 1.68.
|
102
|
+
* libdwarf2p.1.pdf: Regenerated.
|
103
|
+
2008-08-08 DavidAnderson <davea42@earthlink.net>
|
104
|
+
* libdwarf2p.1.mm: Removed some long time
|
105
|
+
spelling mistakes: no technical change in content.
|
106
|
+
Document version 1.67.
|
107
|
+
* libdwarf2p.1.pdf: Regenerated.
|
108
|
+
2008-08-05 DavidAnderson <davea42@earthlink.net>
|
109
|
+
* libdwarf.h, dwarf_error.c: DW_DLA_PUBTYPE_CONTEXT was a mistake,
|
110
|
+
DW_DLE_PUBTYPE_CONTEXT was intended and is now the spelling (neither
|
111
|
+
is used).
|
112
|
+
* dwarf_pubtypes.c dwarf_vars.c dwarf_funcs.c dwarf_global.c dwarf_weaks.c:
|
113
|
+
tabs removed and previous strange formatting generated by a tool
|
114
|
+
removed (4 space indent per level now present).
|
115
|
+
|
116
|
+
2008-08-05 DavidAnderson <davea42@earthlink.net>
|
117
|
+
* libdwarf2.1.mm: There were numerous places the apostrophe
|
118
|
+
was used incorrectly, thru is now spelled through,
|
119
|
+
and a few other small typographical errors were corrected.
|
120
|
+
The document revision id printed is now 1.67.
|
121
|
+
There is no technical change in content.
|
122
|
+
* libdwarf2.1.pdf: Regenerated.
|
123
|
+
2008-06-17 DavidAnderson <davea42@earthlink.net>
|
124
|
+
* libdwarf.h: Add DW_DLE_STRP_OFFSET_BAD error code.
|
125
|
+
* dwarf_form.c: Add runtime check for strp offset.
|
126
|
+
* dwarf_error.c: Add DW_DLE_STRP_OFFSET_BAD error code string.
|
127
|
+
* dwarf_init_finish.c, dwarf_opaque.h, dwarf_elf_access.h: Remove
|
128
|
+
CR characters that crept in.
|
129
|
+
2008-06-13 DavidAnderson <davea42@earthlink.net>
|
130
|
+
* libdwarf.h: Remove __SGI_FAST_LIBELF
|
131
|
+
dwarf_original_elf_init.c: Remove __SGI_FAST_LIBELF
|
132
|
+
and fix some indentation botches.
|
133
|
+
* dwarf_init_finish.c: Fix typo in variable name introduced
|
134
|
+
a few days ago.
|
135
|
+
* dwarf_elf_access.c: Remove __SGI_FAST_LIBELF
|
136
|
+
and fix some indentation botches.
|
137
|
+
|
138
|
+
2008-05-20 DavidAnderson <davea42@earthlink.net>
|
139
|
+
* dwarf_init_finish.c: Expand tabs to spaces.
|
140
|
+
2008-05-20 DavidAnderson <davea42@earthlink.net>
|
141
|
+
* dwarf_init_finish.c(dwarf_object_init): When there is no
|
142
|
+
DWARF information return DW_DLV_NO_ENTRY gracefully.
|
143
|
+
Thanks to Carlos Alberto Enciso for pointing out
|
144
|
+
the bug.
|
145
|
+
2008-04-12 DavidAnderson <davea42@earthlink.net>
|
146
|
+
* pro_section.c: Initialize local variables to zero.
|
147
|
+
Change leading tabs to spaces.
|
148
|
+
* pro_reloc_stream.c: Initialize local variables to zero.
|
149
|
+
Change leading tabs to spaces.
|
150
|
+
* pro_reloc.c: Initialize local variables to zero.
|
151
|
+
Change leading tabs to spaces.
|
152
|
+
2008-04-04 DavidAnderson <davea42@earthlink.net>
|
153
|
+
* dwarf_base_types.h: Removed unused macro definition.
|
154
|
+
* dwarf_util.c: Altered abbreviations hash table for a small
|
155
|
+
performance improvement and space saving.
|
156
|
+
* dwarf_util.h: Changed declaration for space saving in dwarf
|
157
|
+
abbreviations table.
|
158
|
+
2008-04-04 DavidAnderson <davea42@earthlink.net>
|
159
|
+
* libdwarf.h: A trivial change to make a declaration look better.
|
160
|
+
* dwarf_abbrev.h: We record tags in more than 16 bits now just in case
|
161
|
+
we encounter such a thing (increased ab_tag field size), though
|
162
|
+
we should not find such.
|
163
|
+
* dwarf_abbrev.c: Adding a comment about the dwarf TAG value.
|
164
|
+
* dwarf_util.c: Initialize local variables at declaration for safety.
|
165
|
+
Removed truncation of some values: internally record more bits.
|
166
|
+
Rewrote handling of the abbrev table as the old one did not scale
|
167
|
+
to large numbers of abbreviations (things got very slow).
|
168
|
+
* dwarf_util.h: Now has a larger field size in the argument to
|
169
|
+
_dwarf_get_abbrev_for_code (not quite necessary but not harmful).
|
170
|
+
* dwarf_die_deliv.c: Initializing local variables at declaration and
|
171
|
+
removing truncation of bits from some uleb values.
|
172
|
+
* dwarf_die_deliv.h: Increased size of ab_code field.
|
173
|
+
* dwarf_opaque.h: Added a comment about abbreviations.
|
174
|
+
* dwarf_base_types.h: Revised to match addition of new
|
175
|
+
allocation table entry.
|
176
|
+
* dwarf_alloc.h: Document macro definitions and increase one to
|
177
|
+
match new table size.
|
178
|
+
* dwarf_alloc.c: Arrange handling of new DW_DLA_HASH_TABLE_ENTRY
|
179
|
+
(most of the work done in dwarf_util.c).
|
180
|
+
2008-02-27 DavidAnderson <davea42@earthlink.net>
|
181
|
+
* libdwarf.h: Fixed minor typo in latest libdwarf.h that gcc did not
|
182
|
+
complain about. Noted by Josh Fuhs.
|
183
|
+
2008-02-26 DavidAnderson <davea42@earthlink.net>
|
184
|
+
* dwarf_alloc.h: Add comment giving placement of DWARF_SIMPLE_MALLOC.
|
185
|
+
* pro_opaque.h: Remove de_access field, it is never used.
|
186
|
+
* libdwarf.h: Add new data structures to allow reading of
|
187
|
+
non-Elf object files.
|
188
|
+
* dwarf_original_elf_init.c: dwarf_init(), dwarf_elf_init()
|
189
|
+
moved here from dwarf_init_finish.c.
|
190
|
+
* Makefile.in: Build new source files dwarf_original_elf_init.c
|
191
|
+
and dwarf_elf_access.c.
|
192
|
+
* dwarf_init_finish.c: All dependencies on libelf and elf
|
193
|
+
have been removed.
|
194
|
+
* dwarf_opaque.h: The elf related info is removed and Dwarf_Debug_s
|
195
|
+
now contains a new structure (from libdwarf.h) to hide object
|
196
|
+
information.
|
197
|
+
* dwarf_elf_access.c: All the Elf-using code is now in this
|
198
|
+
source file and elf details are kept in a struct defined and
|
199
|
+
used here. Non-libelf and non-elf object access code would
|
200
|
+
write a new source file with their own details using this
|
201
|
+
as an example.
|
202
|
+
* dwarf_elf_access.h: Prototypes for calling between
|
203
|
+
dwarf_original_elf_init.c and dwarf_elf_access.c.
|
204
|
+
2008-02-18 DavidAnderson <davea42@earthlink.net>
|
205
|
+
* libdwarf.h: Declare new object-access functions and structures.
|
206
|
+
* dwarf_original_elf_init.c: Traditional dwarf_init() and dwarf_elf_init()
|
207
|
+
are moved to this new source file.
|
208
|
+
* Makefile.in: Add new source files.
|
209
|
+
* dwarf_init_finish.c: Now uses the function pointers, not
|
210
|
+
libelf specific fields or ifdefs.
|
211
|
+
* pro_opaque.h: Remove de_access field, it is unused.
|
212
|
+
* dwarf_opaque.h: New fields for new object-access functions.
|
213
|
+
* dwarf_elf_access.c: New implementation details for elf access functions
|
214
|
+
moved here from dwarf_init_finish.c.
|
215
|
+
* dwarf_elf_access.h: New function interface so dwarf_elf_access.c
|
216
|
+
and dwarf_original_elf_init.c can communicate.
|
217
|
+
2008-02-08 DavidAnderson <davea42@earthlink.net>
|
218
|
+
* dwarf_print_lines.c: Added commentary to clarify that
|
219
|
+
dwarf_print_lines() and _dwarf_print_lines are intentionally
|
220
|
+
identical. Initialized local variables so they are alll
|
221
|
+
visibly set to some sensible value.
|
222
|
+
2008-02-07 DavidAnderson <davea42@earthlink.net>
|
223
|
+
* dwarf_frame.c (_dwarf_fde_section_offset): A typo
|
224
|
+
in the last release made this an infinite loop.
|
225
|
+
A one character change fixed it. Thanks to Carlos Alberto
|
226
|
+
Enciso for noticing the bug.
|
227
|
+
2008-02-04 DavidAnderson <davea42@earthlink.net>
|
228
|
+
* dwarf_incl.h, pro_incl.h: Moved #include of dwarf.h before libdwarf.h
|
229
|
+
* pro_forms.c: Some newer attributes are now handled.
|
230
|
+
* dwarf_print_lines.c: Removed unused #include.
|
231
|
+
* dwarf_sort_line.c: Removed alloca use in favor of
|
232
|
+
malloc and removed the alloca #include.
|
233
|
+
* dwarf_line.c: Removed unused #include.
|
234
|
+
* dwarf_line2.c: Removed unused #include.
|
235
|
+
|
236
|
+
2008-02-04 DavidAnderson <davea42@earthlink.net>
|
237
|
+
* libdwarf.h: Fix commentary mistakes.
|
238
|
+
2008-02-02 DavidAnderson <davea42@earthlink.net>
|
239
|
+
* libdwarf.h: Add DW_DLC_OFFSET_SIZE_64 for run-time
|
240
|
+
selection of DWARF3 64bit extension producer offset generation.
|
241
|
+
* libdwarf2p.1.mm: Document DW_DLC_OFFSET_SIZE_64.
|
242
|
+
* pro_init.c (dwarf_producer_init): Now standard DWARF3 is the default.
|
243
|
+
* configure.in: Add --enable-dwarf-format-sgi-irix for those
|
244
|
+
wanting IRIX offset-style DWARF2. Add --enable-dwarf-format-strict-32bit
|
245
|
+
for those wanting strictly 32bit offsets.
|
246
|
+
Otherwise default to generating 64bit offsets from the producer code,
|
247
|
+
but allow the DWARF3 extended 64bit offsets if the flag
|
248
|
+
DW_DLC_OFFSET_SIZE_64 is turned on in the call to dwarf_producer_init().
|
249
|
+
* config.h.in: Provide undefs for the offset macros.
|
250
|
+
|
251
|
+
2008-01-25 DavidAnderson <davea42@earthlink.net>
|
252
|
+
* pro_die.c: Changed leading tabs to spaces.
|
253
|
+
2008-01-23 DavidAnderson <davea42@earthlink.net>
|
254
|
+
* pro_die.c: Using di_last_child field dwarf_die_link
|
255
|
+
goes from O(N) to O(1) in adding a child.
|
256
|
+
Thanks to Daniel Gollub for the suggestion.
|
257
|
+
An omission in linking left/right children is fixed.
|
258
|
+
Changed some leading TABs to spaces.
|
259
|
+
* pro_opaque.h: Add di_last_child field.
|
260
|
+
2008-01-14 DavidAnderson <davea42@earthlink.net>
|
261
|
+
* libdwarf2p.1.mm: Added missing backslash to correct formatting
|
262
|
+
error. Thanks to Daniel Golub for pointing out the ommission.
|
263
|
+
* libdwarf2.p1.pdf: Regenerated.
|