diff options
author | Ian Lance Taylor <ian@airs.com> | 1996-10-28 22:01:06 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@airs.com> | 1996-10-28 22:01:06 +0000 |
commit | 9720a1a70fe9273d1c71a96722e6ae70e6a9b2a2 (patch) | |
tree | a99fecd1a017996dc7f27800caa093fabf8427a8 /binutils/ieee.c | |
parent | ab0dfc02f85eedf860439d37fa8aa2773d5c18f2 (diff) | |
download | gdb-9720a1a70fe9273d1c71a96722e6ae70e6a9b2a2.zip gdb-9720a1a70fe9273d1c71a96722e6ae70e6a9b2a2.tar.gz gdb-9720a1a70fe9273d1c71a96722e6ae70e6a9b2a2.tar.bz2 |
* ieee.c (ieee_finish_compilation_unit): Permit coalescing ranges
that are up to 0x1000 bytes apart, not just 64.
(ieee_add_bb11_blocks): Don't bother to emit a BB11 that is less
than 0x100 bytes.
(ieee_lineno): Only emit line numbers that are less than
info->highaddr.
Diffstat (limited to 'binutils/ieee.c')
-rw-r--r-- | binutils/ieee.c | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/binutils/ieee.c b/binutils/ieee.c index ef8edc7..f1276b3 100644 --- a/binutils/ieee.c +++ b/binutils/ieee.c @@ -5085,7 +5085,7 @@ ieee_finish_compilation_unit (info) /* Coalesce ranges if it seems reasonable. */ while (r->next != NULL - && high + 64 >= r->next->low + && high + 0x1000 >= r->next->low && (r->next->high <= (bfd_get_section_vma (info->abfd, s) + bfd_section_size (info->abfd, s)))) @@ -5154,7 +5154,8 @@ ieee_add_bb11_blocks (abfd, sec, data) return; } - if (low < r->low) + if (low < r->low + && r->low - low > 0x100) { if (! ieee_add_bb11 (info, sec, low, r->low)) { @@ -7586,9 +7587,12 @@ ieee_lineno (p, filename, lineno, addr) return false; } - info->pending_lineno_filename = filename; - info->pending_lineno = lineno; - info->pending_lineno_addr = addr; + if (addr < info->highaddr) + { + info->pending_lineno_filename = filename; + info->pending_lineno = lineno; + info->pending_lineno_addr = addr; + } return true; } |