From 8b6efd89a4135971b748c958a852d093b3d79d3d Mon Sep 17 00:00:00 2001 From: Kai Tietz Date: Mon, 28 Feb 2011 18:32:52 +0000 Subject: ChangeLog binutils/ 2011-02-28 Kai Tietz * debug.c (debug_start_source): Use filename_(n)cmp. * ieee.c (ieee_finish_compilation_unit): Likewise. (ieee_lineno): Likewise. * nlmconv.c (main): Likewise. * objcopy.c (strip_main): Likewise. (copy_main): Likewise. * objdump.c (show_line): Likewise. (dump_reloc_set): Likewise. * srconv.c (main): Likewise. * wrstabs.c (stab_lineno): Likewise. ChangeLog gas/ 2011-02-28 Kai Tietz * depend.c (register_dependency): Use filename_(n)cmp. * dwarf2dbg.c (get_filenum): Likewise. * ecoff.c (add_file): Likewise. (ecoff_generate_asm_lineno): Likewise. * input-scrub.c (new_logical_line_flags): Likewise. * listing.c (file_info): Likewise. (listing_newline): Likewise. * remap.c (remap_debug_filename): Likewise. * stabs.c (generate_asm_file): Likewise. (stabs_generate_asm_lineno): Likewise. --- binutils/ChangeLog | 13 +++++++++++++ binutils/debug.c | 5 ++--- binutils/ieee.c | 13 ++++++++----- binutils/nlmconv.c | 3 ++- binutils/objcopy.c | 6 ++++-- binutils/objdump.c | 4 ++-- binutils/resbin.c | 1 + binutils/srconv.c | 3 ++- binutils/wrstabs.c | 3 ++- gas/ChangeLog | 13 +++++++++++++ gas/depend.c | 3 ++- gas/dwarf2dbg.c | 14 +++++++------- gas/ecoff.c | 6 +++--- gas/input-scrub.c | 3 ++- gas/listing.c | 5 +++-- gas/remap.c | 3 ++- gas/stabs.c | 7 ++++--- 17 files changed, 72 insertions(+), 33 deletions(-) diff --git a/binutils/ChangeLog b/binutils/ChangeLog index f481dbf..7d0b89d 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,16 @@ +2011-02-28 Kai Tietz + + * debug.c (debug_start_source): Use filename_(n)cmp. + * ieee.c (ieee_finish_compilation_unit): Likewise. + (ieee_lineno): Likewise. + * nlmconv.c (main): Likewise. + * objcopy.c (strip_main): Likewise. + (copy_main): Likewise. + * objdump.c (show_line): Likewise. + (dump_reloc_set): Likewise. + * srconv.c (main): Likewise. + * wrstabs.c (stab_lineno): Likewise. + 2011-02-24 Zachary T Welch * readelf.c (decode_arm_unwind): Implement decoding of remaining diff --git a/binutils/debug.c b/binutils/debug.c index ebe63f1..ee0d62e 100644 --- a/binutils/debug.c +++ b/binutils/debug.c @@ -31,6 +31,7 @@ #include #include "bfd.h" #include "libiberty.h" +#include "filenames.h" #include "debug.h" /* Global information we keep for debugging. A pointer to this @@ -729,9 +730,7 @@ debug_start_source (void *handle, const char *name) for (f = info->current_unit->files; f != NULL; f = f->next) { - if (f->filename[0] == name[0] - && f->filename[1] == name[1] - && strcmp (f->filename, name) == 0) + if (filename_cmp (f->filename, name) == 0) { info->current_file = f; return TRUE; diff --git a/binutils/ieee.c b/binutils/ieee.c index 34b9373..c8460dc 100644 --- a/binutils/ieee.c +++ b/binutils/ieee.c @@ -4938,7 +4938,7 @@ ieee_finish_compilation_unit (struct ieee_handle *info) if (! ieee_change_buffer (info, &info->linenos) || ! ieee_write_byte (info, (int) ieee_be_record_enum)) return FALSE; - if (strcmp (info->filename, info->lineno_filename) != 0) + if (filename_cmp (info->filename, info->lineno_filename) != 0) { /* We were not in the main file. We just closed the included line number block, and now we must close the @@ -7339,15 +7339,17 @@ ieee_lineno (void *p, const char *filename, unsigned long lineno, bfd_vma addr) info->lineno_filename = info->filename; } - if (strcmp (info->pending_lineno_filename, info->lineno_filename) != 0) + if (filename_cmp (info->pending_lineno_filename, + info->lineno_filename) != 0) { - if (strcmp (info->filename, info->lineno_filename) != 0) + if (filename_cmp (info->filename, info->lineno_filename) != 0) { /* We were not in the main file. Close the block for the included file. */ if (! ieee_write_byte (info, (int) ieee_be_record_enum)) return FALSE; - if (strcmp (info->filename, info->pending_lineno_filename) == 0) + if (filename_cmp (info->filename, + info->pending_lineno_filename) == 0) { /* We need a new NN record, and we aren't about to output one. */ @@ -7359,7 +7361,8 @@ ieee_lineno (void *p, const char *filename, unsigned long lineno, bfd_vma addr) return FALSE; } } - if (strcmp (info->filename, info->pending_lineno_filename) != 0) + if (filename_cmp (info->filename, + info->pending_lineno_filename) != 0) { /* We are not changing to the main file. Open a block for the new included file. */ diff --git a/binutils/nlmconv.c b/binutils/nlmconv.c index a675f61..157b41c 100644 --- a/binutils/nlmconv.c +++ b/binutils/nlmconv.c @@ -37,6 +37,7 @@ #include "sysdep.h" #include "bfd.h" #include "libiberty.h" +#include "filenames.h" #include "safe-ctype.h" #include "ansidecl.h" @@ -268,7 +269,7 @@ main (int argc, char **argv) ++optind; if (optind < argc) show_usage (stderr, 1); - if (strcmp (input_file, output_file) == 0) + if (filename_cmp (input_file, output_file) == 0) { fatal (_("input and output files must be different")); } diff --git a/binutils/objcopy.c b/binutils/objcopy.c index ac176df..51ea732f 100644 --- a/binutils/objcopy.c +++ b/binutils/objcopy.c @@ -3035,7 +3035,8 @@ strip_main (int argc, char *argv[]) It has already been checked in get_file_size(). */ stat (argv[i], &statbuf); - if (output_file == NULL || strcmp (argv[i], output_file) == 0) + if (output_file == NULL + || filename_cmp (argv[i], output_file) == 0) tmpname = make_tempname (argv[i]); else tmpname = output_file; @@ -3902,7 +3903,8 @@ copy_main (int argc, char *argv[]) /* If there is no destination file, or the source and destination files are the same, then create a temp and rename the result into the input. */ - if (output_filename == NULL || strcmp (input_filename, output_filename) == 0) + if (output_filename == NULL + || filename_cmp (input_filename, output_filename) == 0) tmpname = make_tempname (input_filename); else tmpname = output_filename; diff --git a/binutils/objdump.c b/binutils/objdump.c index 0be662f..034514a 100644 --- a/binutils/objdump.c +++ b/binutils/objdump.c @@ -1348,7 +1348,7 @@ show_line (bfd *abfd, asection *section, bfd_vma addr_offset) unsigned l; for (pp = &print_files; *pp != NULL; pp = &(*pp)->next) - if (strcmp ((*pp)->filename, filename) == 0) + if (filename_cmp ((*pp)->filename, filename) == 0) break; p = *pp; @@ -2856,7 +2856,7 @@ dump_reloc_set (bfd *abfd, asection *sec, arelent **relpp, long relcount) && (linenumber != last_line || (filename != NULL && last_filename != NULL - && strcmp (filename, last_filename) != 0))) + && filename_cmp (filename, last_filename) != 0))) { printf ("%s:%u\n", filename == NULL ? "???" : filename, linenumber); last_line = linenumber; diff --git a/binutils/resbin.c b/binutils/resbin.c index c35af98..b3682f7 100644 --- a/binutils/resbin.c +++ b/binutils/resbin.c @@ -1867,6 +1867,7 @@ res_to_bin_stringtable (windres_bfd *wrbfd, rc_uint_type off, unichar *s; slen = (rc_uint_type) st->strings[i].length; + if (slen == 0xffffffff) slen = 0; s = st->strings[i].string; length = 2 + slen * 2; diff --git a/binutils/srconv.c b/binutils/srconv.c index c288fd5..7b3d4a7 100644 --- a/binutils/srconv.c +++ b/binutils/srconv.c @@ -32,6 +32,7 @@ #include "sysroff.h" #include "coffgrok.h" #include "libiberty.h" +#include "filenames.h" #include "getopt.h" #include "coff/internal.h" @@ -1818,7 +1819,7 @@ main (int ac, char **av) ++optind; if (optind < ac) show_usage (stderr, 1); - if (strcmp (input_file, output_file) == 0) + if (filename_cmp (input_file, output_file) == 0) { fatal (_("input and output files must be different")); } diff --git a/binutils/wrstabs.c b/binutils/wrstabs.c index fd2283f..0ca861c 100644 --- a/binutils/wrstabs.c +++ b/binutils/wrstabs.c @@ -27,6 +27,7 @@ #include #include "bfd.h" #include "libiberty.h" +#include "filenames.h" #include "safe-ctype.h" #include "bucomm.h" #include "debug.h" @@ -2261,7 +2262,7 @@ stab_lineno (void *p, const char *file, unsigned long lineno, bfd_vma addr) if (addr > info->last_text_address) info->last_text_address = addr; - if (strcmp (file, info->lineno_filename) != 0) + if (filename_cmp (file, info->lineno_filename) != 0) { if (! stab_write_symbol (info, N_SOL, 0, addr, file)) return FALSE; diff --git a/gas/ChangeLog b/gas/ChangeLog index 29f3684..8fcce3e 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,16 @@ +2011-02-28 Kai Tietz + + * depend.c (register_dependency): Use filename_(n)cmp. + * dwarf2dbg.c (get_filenum): Likewise. + * ecoff.c (add_file): Likewise. + (ecoff_generate_asm_lineno): Likewise. + * input-scrub.c (new_logical_line_flags): Likewise. + * listing.c (file_info): Likewise. + (listing_newline): Likewise. + * remap.c (remap_debug_filename): Likewise. + * stabs.c (generate_asm_file): Likewise. + (stabs_generate_asm_lineno): Likewise. + 2011-02-28 Maciej W. Rozycki * config/tc-mips.c (append_insn): Disable branch relaxation for diff --git a/gas/depend.c b/gas/depend.c index afa512e..7a3c54c 100644 --- a/gas/depend.c +++ b/gas/depend.c @@ -20,6 +20,7 @@ 02110-1301, USA. */ #include "as.h" +#include "filenames.h" /* The file to write to, or NULL if no dependencies being kept. */ static char * dep_file = NULL; @@ -63,7 +64,7 @@ register_dependency (char *filename) for (dep = dep_chain; dep != NULL; dep = dep->next) { - if (!strcmp (filename, dep->file)) + if (!filename_cmp (filename, dep->file)) return; } diff --git a/gas/dwarf2dbg.c b/gas/dwarf2dbg.c index 85c1f30..587920f 100644 --- a/gas/dwarf2dbg.c +++ b/gas/dwarf2dbg.c @@ -431,14 +431,14 @@ get_filenum (const char *filename, unsigned int num) if (num == 0 && last_used) { if (! files[last_used].dir - && strcmp (filename, files[last_used].filename) == 0) + && filename_cmp (filename, files[last_used].filename) == 0) return last_used; if (files[last_used].dir - && strncmp (filename, dirs[files[last_used].dir], - last_used_dir_len) == 0 + && filename_ncmp (filename, dirs[files[last_used].dir], + last_used_dir_len) == 0 && IS_DIR_SEPARATOR (filename [last_used_dir_len]) - && strcmp (filename + last_used_dir_len + 1, - files[last_used].filename) == 0) + && filename_cmp (filename + last_used_dir_len + 1, + files[last_used].filename) == 0) return last_used; } @@ -460,7 +460,7 @@ get_filenum (const char *filename, unsigned int num) --dir_len; #endif for (dir = 1; dir < dirs_in_use; ++dir) - if (strncmp (filename, dirs[dir], dir_len) == 0 + if (filename_ncmp (filename, dirs[dir], dir_len) == 0 && dirs[dir][dir_len] == '\0') break; @@ -485,7 +485,7 @@ get_filenum (const char *filename, unsigned int num) for (i = 1; i < files_in_use; ++i) if (files[i].dir == dir && files[i].filename - && strcmp (file, files[i].filename) == 0) + && filename_cmp (file, files[i].filename) == 0) { last_used = i; last_used_dir_len = dir_len; diff --git a/gas/ecoff.c b/gas/ecoff.c index d623ba9..27e48e5 100644 --- a/gas/ecoff.c +++ b/gas/ecoff.c @@ -2257,7 +2257,7 @@ add_file (const char *file_name, int indx ATTRIBUTE_UNUSED, int fake) fil_ptr = fil_ptr->next_file) { if (first_ch == fil_ptr->name[0] - && strcmp (file_name, fil_ptr->name) == 0 + && filename_cmp (file_name, fil_ptr->name) == 0 && fil_ptr->fdr.fMerge) { cur_file_ptr = fil_ptr; @@ -2325,7 +2325,7 @@ add_file (const char *file_name, int indx ATTRIBUTE_UNUSED, int fake) void ecoff_new_file (const char *name, int appfile ATTRIBUTE_UNUSED) { - if (cur_file_ptr != NULL && strcmp (cur_file_ptr->name, name) == 0) + if (cur_file_ptr != NULL && filename_cmp (cur_file_ptr->name, name) == 0) return; add_file (name, 0, 0); @@ -5200,7 +5200,7 @@ ecoff_generate_asm_lineno (void) as_where (&filename, &lineno); if (current_stabs_filename == (char *) NULL - || strcmp (current_stabs_filename, filename)) + || filename_cmp (current_stabs_filename, filename)) add_file (filename, 0, 1); list = allocate_lineno_list (); diff --git a/gas/input-scrub.c b/gas/input-scrub.c index e1ff5cc..d616f63 100644 --- a/gas/input-scrub.c +++ b/gas/input-scrub.c @@ -21,6 +21,7 @@ 02110-1301, USA. */ #include "as.h" +#include "filenames.h" #include "input-file.h" #include "sb.h" #include "listing.h" @@ -474,7 +475,7 @@ new_logical_line_flags (char *fname, /* DON'T destroy it! We point to it! */ if (fname && (logical_input_file == NULL - || strcmp (logical_input_file, fname))) + || filename_cmp (logical_input_file, fname))) { logical_input_file = fname; return 1; diff --git a/gas/listing.c b/gas/listing.c index bc6af71..6d28f31 100644 --- a/gas/listing.c +++ b/gas/listing.c @@ -90,6 +90,7 @@ on a line. */ #include "as.h" +#include "filenames.h" #include "obstack.h" #include "safe-ctype.h" #include "input-file.h" @@ -257,7 +258,7 @@ file_info (const char *file_name) while (p != (file_info_type *) NULL) { - if (strcmp (p->filename, file_name) == 0) + if (filename_cmp (p->filename, file_name) == 0) return p; p = p->next; } @@ -318,7 +319,7 @@ listing_newline (char *ps) if (ps == NULL) { if (line == last_line - && !(last_file && file && strcmp (file, last_file))) + && !(last_file && file && filename_cmp (file, last_file))) return; new_i = (list_info_type *) xmalloc (sizeof (list_info_type)); diff --git a/gas/remap.c b/gas/remap.c index b334b2c..0c863fb 100644 --- a/gas/remap.c +++ b/gas/remap.c @@ -19,6 +19,7 @@ 02110-1301, USA. */ #include "as.h" +#include "filenames.h" /* Structure recording the mapping from source file and directory names at compile time to those to be embedded in debug @@ -76,7 +77,7 @@ remap_debug_filename (const char *filename) size_t name_len; for (map = debug_prefix_maps; map; map = map->next) - if (strncmp (filename, map->old_prefix, map->old_len) == 0) + if (filename_ncmp (filename, map->old_prefix, map->old_len) == 0) break; if (!map) return filename; diff --git a/gas/stabs.c b/gas/stabs.c index d19bf2b..f197ebd 100644 --- a/gas/stabs.c +++ b/gas/stabs.c @@ -20,6 +20,7 @@ 02110-1301, USA. */ #include "as.h" +#include "filenames.h" #include "obstack.h" #include "subsegs.h" #include "ecoff.h" @@ -521,7 +522,7 @@ generate_asm_file (int type, char *file) char *bufp; if (last_file != NULL - && strcmp (last_file, file) == 0) + && filename_cmp (last_file, file) == 0) return; /* Rather than try to do this in some efficient fashion, we just @@ -605,7 +606,7 @@ stabs_generate_asm_lineno (void) prev_lineno = lineno; } else if (lineno == prev_lineno - && strcmp (file, prev_file) == 0) + && filename_cmp (file, prev_file) == 0) { /* Same file/line as last time. */ return; @@ -614,7 +615,7 @@ stabs_generate_asm_lineno (void) { /* Remember file/line for next time. */ prev_lineno = lineno; - if (strcmp (file, prev_file) != 0) + if (filename_cmp (file, prev_file) != 0) { free (prev_file); prev_file = xstrdup (file); -- cgit v1.1