+2005-10-24  Jie Zhang <jie.zhang@analog.com>
+
+       * elf32-bfin.c (bfd_bfin_elf32_create_embedded_relocs): Fix signedness
+       warning.
+
 2005-10-24  Bernd Schmidt  <bernd.schmidt@analog.com>
 
        * elf32-bfin.c (bfin_howto_table): Set src_mask to 0 for all relocs.
 
       bfd_put_32 (abfd, irel->r_offset + datasec->output_offset, p);
       memset (p + 4, 0, 8);
       if (targetsec != NULL)
-       strncpy (p + 4, targetsec->output_section->name, 8);
+       strncpy ((char *) p + 4, targetsec->output_section->name, 8);
     }
 
   if (isymbuf != NULL && symtab_hdr->contents != (unsigned char *) isymbuf)
 
+2005-10-24  Jie Zhang  <jie.zhang@analog.com>
+
+       * Makefile.am (bfin-parse.h): Renamed from bfin-parse.tab.h.
+       (EXTRA_DIST): Add bfin-parse.h and bfin-lex.c.
+       * Makefile.in: Regenerate.
+       * config/bfin-lex.l: Include bfin-parse.h instead of bfin-parse.tab.h.
+       * config/tc-bfin.c (md_chars_to_number): Change the type of first
+       argument from unsigned char * to char * to remove signedness warnings.
+
 2005-10-24  Jan Beulich  <jbeulich@novell.com>
 
        * config/tc-ia64.c (enum reg_symbol): Delete IND_MEM.
 
 EXTRA_SCRIPTS = .gdbinit
 
 EXTRA_DIST = m68k-parse.c itbl-parse.c itbl-parse.h itbl-lex.c \
-       bfin-parse.c
+       bfin-parse.c bfin-parse.h bfin-lex.c
 
 diststuff: $(EXTRA_DIST) info
 all: info
 $(srcdir)/config/m68k-parse.h: ; @true
 
 bfin-parse.c bfin-parse.tab.h: $(srcdir)/config/bfin-parse.y
-       $(SHELL) $(YLWRAP) $(srcdir)/config/bfin-parse.y y.tab.c bfin-parse.c y.tab.h bfin-parse.tab.h -- $(YACCCOMPILE) -d ;
-bfin-parse.o: bfin-parse.c bfin-parse.tab.h $(srcdir)/config/bfin-defs.h
+       $(SHELL) $(YLWRAP) $(srcdir)/config/bfin-parse.y y.tab.c bfin-parse.c y.tab.h bfin-parse.h -- $(YACCCOMPILE) -d ;
+bfin-parse.o: bfin-parse.c bfin-parse.h $(srcdir)/config/bfin-defs.h
 
 bfin-defs.h: ; @true
 $(srcdir)/config/bfin-defs.h: ; @true
 
 bfin-lex.c: $(srcdir)/config/bfin-lex.l
        $(SHELL) $(YLWRAP) $(srcdir)/config/bfin-lex.l lex.yy.c bfin-lex.c -- $(LEXCOMPILE)
-bfin-lex.o: bfin-lex.c bfin-parse.tab.h $(srcdir)/config/bfin-defs.h
+bfin-lex.o: bfin-lex.c bfin-parse.h $(srcdir)/config/bfin-defs.h
        $(COMPILE) -c $< $(NO_WERROR)
 
 # The instruction table specification lexical analyzer and parser.
 
 noinst_SCRIPTS = $(GDBINIT)
 EXTRA_SCRIPTS = .gdbinit
 EXTRA_DIST = m68k-parse.c itbl-parse.c itbl-parse.h itbl-lex.c \
-       bfin-parse.c
+       bfin-parse.c bfin-parse.h bfin-lex.c
 
 DISTCLEANFILES = targ-cpu.h obj-format.h targ-env.h itbl-cpu.h cgen-desc.h
 
 $(srcdir)/config/m68k-parse.h: ; @true
 
 bfin-parse.c bfin-parse.tab.h: $(srcdir)/config/bfin-parse.y
-       $(SHELL) $(YLWRAP) $(srcdir)/config/bfin-parse.y y.tab.c bfin-parse.c y.tab.h bfin-parse.tab.h -- $(YACCCOMPILE) -d ;
-bfin-parse.o: bfin-parse.c bfin-parse.tab.h $(srcdir)/config/bfin-defs.h
+       $(SHELL) $(YLWRAP) $(srcdir)/config/bfin-parse.y y.tab.c bfin-parse.c y.tab.h bfin-parse.h -- $(YACCCOMPILE) -d ;
+bfin-parse.o: bfin-parse.c bfin-parse.h $(srcdir)/config/bfin-defs.h
 
 bfin-defs.h: ; @true
 $(srcdir)/config/bfin-defs.h: ; @true
 
 bfin-lex.c: $(srcdir)/config/bfin-lex.l
        $(SHELL) $(YLWRAP) $(srcdir)/config/bfin-lex.l lex.yy.c bfin-lex.c -- $(LEXCOMPILE)
-bfin-lex.o: bfin-lex.c bfin-parse.tab.h $(srcdir)/config/bfin-defs.h
+bfin-lex.o: bfin-lex.c bfin-parse.h $(srcdir)/config/bfin-defs.h
        $(COMPILE) -c $< $(NO_WERROR)
 
 # The instruction table specification lexical analyzer and parser.
 
 #include <stdlib.h>
 #include <string.h>
 #include "bfin-defs.h"
-#include "bfin-parse.tab.h"
+#include "bfin-parse.h"
 #include "as.h"
 
 static long parse_int (char **end);
 
 extern void yy_delete_buffer (YY_BUFFER_STATE b);
 static parse_state parse (char *line);
 static void bfin_s_bss PARAMS ((int));
-static int md_chars_to_number PARAMS ((unsigned char *, int));
+static int md_chars_to_number PARAMS ((char *, int));
 
 /* Global variables. */
 struct bfin_insn *insn;
 /* Convert from target byte order to host byte order.  */
 
 static int
-md_chars_to_number (val, n)
-     unsigned char *val;       /* Value in target byte order.  */
-     int n;                    /* Number of bytes in the input.  */
+md_chars_to_number (char *val, int n)
 {
   int retval;