From: Jim Blandy Date: Thu, 9 May 2002 23:32:45 +0000 (+0000) Subject: Properly track the size of the current objfile's .debug_line section. X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=964c421091a7ffa9970d8368d5f83d9b1c00949c;p=thirdparty%2Fbinutils-gdb.git Properly track the size of the current objfile's .debug_line section. * dwarf2read.c (struct dwarf2_pinfo): New member: dwarf_line_size. (DWARF_LINE_SIZE): New macro. (dwarf2_build_psymtabs_hard): Record the line section's size in the partial symbol table. (psymtab_to_symtab_1): Restore dwarf_line_size from the partial symbol table. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 2d781d302ae..4900cd08688 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,13 @@ 2002-05-09 Jim Blandy + Properly track the size of the current objfile's .debug_line section. + * dwarf2read.c (struct dwarf2_pinfo): New member: dwarf_line_size. + (DWARF_LINE_SIZE): New macro. + (dwarf2_build_psymtabs_hard): Record the line section's size in + the partial symbol table. + (psymtab_to_symtab_1): Restore dwarf_line_size from the partial + symbol table. + Teach the Dwarf 2 reader to read macro information. * dwarf2read.c: #include "macrotab.h". (dwarf_macinfo_buffer): New variable. diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c index f9585d34241..6c30a6be7a8 100644 --- a/gdb/dwarf2read.c +++ b/gdb/dwarf2read.c @@ -434,6 +434,10 @@ struct dwarf2_pinfo char *dwarf_line_buffer; + /* Size of dwarf_line_buffer, in bytes. */ + + unsigned int dwarf_line_size; + /* Pointer to start of dwarf string buffer for the objfile. */ char *dwarf_str_buffer; @@ -458,6 +462,7 @@ struct dwarf2_pinfo #define DWARF_ABBREV_BUFFER(p) (PST_PRIVATE(p)->dwarf_abbrev_buffer) #define DWARF_ABBREV_SIZE(p) (PST_PRIVATE(p)->dwarf_abbrev_size) #define DWARF_LINE_BUFFER(p) (PST_PRIVATE(p)->dwarf_line_buffer) +#define DWARF_LINE_SIZE(p) (PST_PRIVATE(p)->dwarf_line_size) #define DWARF_STR_BUFFER(p) (PST_PRIVATE(p)->dwarf_str_buffer) #define DWARF_STR_SIZE(p) (PST_PRIVATE(p)->dwarf_str_size) #define DWARF_MACINFO_BUFFER(p) (PST_PRIVATE(p)->dwarf_macinfo_buffer) @@ -1222,6 +1227,7 @@ dwarf2_build_psymtabs_hard (struct objfile *objfile, int mainline) DWARF_ABBREV_BUFFER (pst) = dwarf_abbrev_buffer; DWARF_ABBREV_SIZE (pst) = dwarf_abbrev_size; DWARF_LINE_BUFFER (pst) = dwarf_line_buffer; + DWARF_LINE_SIZE (pst) = dwarf_line_size; DWARF_STR_BUFFER (pst) = dwarf_str_buffer; DWARF_STR_SIZE (pst) = dwarf_str_size; DWARF_MACINFO_BUFFER (pst) = dwarf_macinfo_buffer; @@ -1525,6 +1531,7 @@ psymtab_to_symtab_1 (struct partial_symtab *pst) dwarf_abbrev_buffer = DWARF_ABBREV_BUFFER (pst); dwarf_abbrev_size = DWARF_ABBREV_SIZE (pst); dwarf_line_buffer = DWARF_LINE_BUFFER (pst); + dwarf_line_size = DWARF_LINE_SIZE (pst); dwarf_str_buffer = DWARF_STR_BUFFER (pst); dwarf_str_size = DWARF_STR_SIZE (pst); dwarf_macinfo_buffer = DWARF_MACINFO_BUFFER (pst);