1 2004-09-25 Ulrich Drepper <drepper (a] redhat.com> 2 3 * dwarf_child.c: Make compile with gcc 4.0. 4 * dwarf_error.c: Likewise. 5 * dwarf_formblock.c: Likewise. 6 * dwarf_getabbrev.c: Likewise. 7 * dwarf_getattrs.c: Likewise. 8 * dwarf_getsrclines.c: Likewise. 9 * dwarf_tag.c: Likewise. 10 * libdw_form.c: Likewise. 11 12 2004-01-20 Ulrich Drepper <drepper (a] redhat.com> 13 14 * Makefile.am: Support building with mudflap. 15 16 * dwarf_getloclist.c: Fix warnings gcc 3.4 spits out. 17 * dwarf_getsrclines.c: Likewise. 18 * dwarf_memory-access.h: Likewise. 19 20 2004-01-19 Ulrich Drepper <drepper (a] redhat.com> 21 22 * dwarf_getsrcfiles.c: Third parameter can be NULL. 23 24 * libdw.h: Define Dwarf_macro. Declare dwarf_getmacros. 25 Third parameter of dwarf_getsrcfiles can be NULL. 26 27 * libdw.map: Add dwarf_getmacros. 28 * Makefile.am (libdw_a_SOURCES): Add dwarf_getmacros. 29 * dwarf_getmacros.c: New file. 30 31 2004-01-18 Ulrich Drepper <drepper (a] redhat.com> 32 33 * libdw.h: Second parameter of dwarf_getaranges can be NULL. 34 35 * dwarf_nextcu.c: Return -1 if dwarf parameter is NULL. 36 37 * dwarf_getsrclines.c: 38 Use read_2ubyte_unaligned_inc instead of _inc-less variant. 39 40 * dwarf_getaranges.c: Allow naranges parameter to be NULL. 41 42 * libdwP.h (_): Use elfutils domain. 43 44 * dwarf_getsrclines.c (dwarf_getsrclines): Add more branch prediction. 45 46 * dwarf_getsrclines.c: Fix typo in comment. 47 48 2004-01-17 Ulrich Drepper <drepper (a] redhat.com> 49 50 * Makefile.am: Support building with mudflap. 51 52 2004-01-16 Ulrich Drepper <drepper (a] redhat.com> 53 54 * memory-access.h: Add lots of const in case a pointer passed is const. 55 56 * dwarf_formflag.c: New file. 57 * dwarf_getattrs.c: New file. 58 * dwarf_error.c: Add new error value. 59 * libdw.h: Add prototypes for new functions. Adjust prototype for 60 dwarf_getpubnames. 61 * libdw.map: Add new functions. 62 * dwarf_getpubnames.c: Change type of return value and fourth parameter 63 to ptrdiff_t. 64 * libdwP.h: Add new error value. 65 * Makefile.am (libdw_a_SOURCES): Add dwarf_getattrs.c and 66 dwarf_formflag.c. 67 68 * dwarf_getpubnames.c (dwarf_getpubnames): Just fail if dbg is NULL. 69 70 2004-01-12 Ulrich Drepper <drepper (a] redhat.com> 71 72 * dwarf_getarange_addr.c: New file 73 * dwarf_getarangeinfo.c: New file. 74 * dwarf_getaranges.c: New file. 75 * dwarf_onerange.c: New file. 76 * libdw.h: Declare new functions. Define Dwarf_Arange and 77 Dwarf_Aranges. 78 * libdw.map: Add new functions. 79 * libdwP.h: Add new errors. Add aranges member to struct Dwarf. 80 Define Dwarf_Aranges_s and Dwarf_Arange_s. 81 * Makefile.am (libdw_a_SOURCES): Add dwarf_getaranges.c, 82 dwarf_onearange.c, dwarf_getarangeinfo.c, dwarf_getarange_addr.c. 83 * dwarf_error.c: Add new message. 84 85 2004-01-11 Ulrich Drepper <drepper (a] redhat.com> 86 87 * Makefile.am (libdw_a_SOURCES): Add dwarf_lineaddr.c, dwarf_linecol.c, 88 dwarf_linebeginstatement.c, dwarf_lineendsequence.c, dwarf_lineblock.c, 89 dwarf_lineprologueend.c, dwarf_lineepiloguebegin.c, dwarf_onesrcline.c. 90 * dwarf_error.c: Add another message. 91 * dwarf_getsrc_die.c: Adjust for Dwarf_Files and Dwarf_Lines 92 introduction. 93 * dwarf_filesrc.c: Likewise. 94 * dwarf_getsrcfiles.c: Likewise. 95 * dwarf_getsrclines.c: Likewise. 96 * dwarf_lineaddr.c: New file. 97 * dwarf_linebeginstatement.c: New file. 98 * dwarf_lineblock.c: New file. 99 * dwarf_linecol.c: New file. 100 * dwarf_lineendsequence.c: New file. 101 * dwarf_lineepiloguebegin.c: New file. 102 * dwarf_lineno.c: New file. 103 * dwarf_lineprologueend.c: New file. 104 * dwarf_onesrcline.c: New file. 105 * dwarf_lineno.c: Change interface to store result in object pointed 106 to by second parameter. 107 * libdw.h: Add prototypes for new functions. Change dwarf_lineno 108 prototype. Define Dwarf_Files and Dwarf_Lines. 109 * libdw.map: Add new functions. 110 * libdwP.h: Define Dwarf_Files_s and Dwarf_Lines_s. 111 * libdw_findcu.c: Don't initialize nlines field. 112 113 * dwarf_siblingof: Little optimization. 114 115 * dwarf_begin.c: Remember that the ELF descriptor must be closed. 116 * dwarf_end.c: Close ELF descriptor if free_elf is set. 117 * libdwP.h (struct Dwarf): Add free_elf field. 118 119 * Makefile.am (libdw_a_SOURCES): Add dwarf_getstring.c and 120 dwarf_offabbrev.c. 121 * dwarf_getstring.c: New file. 122 * dwarf_offabbrev.c: New file. 123 * libdw.map: Add dwarf_getstring and dwarf_offabbrev. 124 * dwarf_getabbrev.c (__libdw_getabbrev): Add new dbg and result 125 parameters. Don't allocate memory if not necessary and don't lookup 126 previous results if no CU given. 127 (dwarf_getabbrev): Adjust call to __libdw_getabbrev. 128 * dwarf_tag.c: Adjust call to __libdw_getabbrev. 129 * libdw.h: Declare dwarf_offabbrev and dwarf_getstring. 130 * libdwP.h: Change prototype for __libdw_getabbrev. 131 132 * dwarf_getabbrevattr.c: Add offsetp parameter. Fill in before 133 returning if this is wanted. 134 135 2004-01-09 Ulrich Drepper <drepper (a] redhat.com> 136 137 * dwarf_nextcu.c: Add new parameter offset_sizep. Initialize it 138 with offset_size value. 139 * libdw.h: Adjust dwarf_nextcu prototype. 140 * libdwP.h (struct Dwarf_CU): Add offset_size member. 141 * libdw_findcu.c: Adjust dwarf_nextcu call. Initialize offset_size 142 member of new CU struct. 143 * dwarf_formstring.c: Depend on offset_size not address_size for 144 DW_FORM_strp handling. 145 * dwarf_form.c: Likewise for DW_FORM_strp and DW_FORM_ref_addr. 146 147 * dwarf_tag.c (__libdw_findabbrev): Return correct value for 148 failing lookup. 149 (dwarf_tag): Correctly recognize failed lookup. 150 151 * dwarf_end.c (cu_free): Call tdestroy for locs member. Use new 152 function noop_free. 153 * dwarf_error.c: Add message for DWARF_E_NO_BLOCK. 154 * dwarf_formblock.c: New file. 155 * dwarf_getloclist.c: Rewrite to handle a single block. 156 * libdw.h: Define Dwarf_Block. Rename Dwarf_Loc members. Remove 157 Dwarf_Locdesc definition. Declare dwarf_formblock. Remove 158 dwarf_getloclistent declaration. 159 * libdw.map: Add dwarf_formblock, remove dwarf_getloclistent. 160 * libdwP.h: Define struct loc_s and DWARF_E_NO_BLOCK. 161 Add locs member to struct Dwarf_CU. 162 * libdw_fundcu.c: Initialize locs member of new CU. 163 * Makefile.am (libdw_a_SOURCES): Add dwarf_formblock.c. 164 Remove dwarf_getloclistent.c. 165 166 2004-01-07 Ulrich Drepper <drepper (a] redhat.com> 167 168 * libdw.h: Use __nonnull__ attribute only for gcc >= 3.3. 169 * libdwP.h: Likewise. 170 171 * dwarf_getloclist.c: New file. 172 * dwarf_getloclistent.c: New file. 173 * libdw.h: Define Dwarf_Loc and Dwarf_Locdesc. 174 Declare dwarf_getloclistent and dwarf_getloclist. 175 * libdw.map: Add dwarf_getloclistent and dwarf_getloclist. 176 * libdwP.h: Define DWARF_E_NO_LOCLIST. 177 * Makefile.am (libdw_a_SOURCES): Add dwarf_getloclistent.c and 178 dwarf_getloclist.c. 179 180 * dwarf_error.c: More error messages. 181 182 2004-01-06 Ulrich Drepper <drepper (a] redhat.com> 183 184 * dwarf_getsrclines.c: Remove debugging support. 185 186 * dwarf_getsrcfiles.c: New file. 187 * dwarf_filesrc.c: New file. 188 * libdw.h: Declare these functions. Define Dwarf_File. 189 * libdwP.c: Adjust Dwarf_File_s definition. 190 * libdw.map: Add these functions. 191 * Makefile.am (libdw_a_SOURCES): Add dwarf_getsrcfiles.c and 192 dwarf_filesrc.c. 193 * dwarf_getsrclines.c: Initialize cu->files. 194 195 2004-01-05 Ulrich Drepper <drepper (a] redhat.com> 196 197 * libdw.h: Add more nonnull function attributes. 198 199 * dwarf_begin_elf.c (dwarf_begin_elf): Don't initialize mem_tail->next. 200 * dwarf_end.c (cu_free): New function. 201 (dwarf_end): Also free CU tree. Correct freeing of memory blocks. 202 * dwarf_error.c (errmsgs): Add new messages. 203 * dwarf_getsrc_die.c: New file. 204 * dwarf_getsrclines.c: New file. 205 * dwarf_lineno.c: New file. 206 * dwarf_linesrc.c: New file. 207 * dwarf_nextcu.c (dwarf_nextcu): Use read_*byte_unaligned_inc 208 instead of the *_inc-less variants. 209 * libdw.h: Define Dwarf_Line. Add some function attributes. Declare 210 dwarf_getsrclines, dwarf_getsrc_die, dwarf_lineno, and dwarf_linesrc. 211 * libdw.map: Add dwarf_getsrclines, dwarf_getsrc_die, dwarf_lineno, 212 and dwarf_linesrc. 213 * libdwP.h: Add more error codes. 214 (struct Dwarf): Remove mem_tail.next member. 215 (Dwarf_File): Define type. 216 (struct Dwarf_Line_s): Define type. 217 (struct Dwarf_CU): Add lines and nlines members. 218 (libdw_alloc): Define local variable _tail and use it. 219 Add some function attributes. 220 * libdw_alloc.c (__libdw_allocate): Don't initialize next member. 221 * libdw_findcu.c (__libdw_findcu): Initialize lines and nlines members. 222 * memory-access.h: Add unlikely for the endian conversion paths. 223 * Makefile.am (AM_CFLAGS): Add -std parameter. 224 (libdw_a_SOURCES): Add dwarf_getsrclines, dwarf_getsrc_die, 225 dwarf_lineno, and dwarf_linesrc. 226 227 2003-08-11 Ulrich Drepper <drepper (a] redhat.com> 228 229 * Moved to CVS archive. 230