I only built it with gcc4 from the gcc4 book when it was out, but here is
this patch I tried with it. Built it, but didn't see if binutils actually 
worked:

diff -Naur binutils-2.15.94.0.2.2.orig/gas/config/tc-i386.c 
binutils-2.15.94.0.2.2/gas/config/tc-i386.c
--- binutils-2.15.94.0.2.2.orig/gas/config/tc-i386.c    2004-12-20 
19:16:50.000000000 +0000
+++ binutils-2.15.94.0.2.2/gas/config/tc-i386.c 2005-09-13 21:41:37.000000000 
+0000
@@ -372,6 +372,7 @@
    prefix), and doesn't work, unless the destination is in the bottom
    64k of the code segment (The top 16 bits of eip are zeroed).  */

+extern const struct relax_type md_relax_table[];
 const relax_typeS md_relax_table[] =
 {
   /* The fields are:
diff -Naur binutils-2.15.94.0.2.2.orig/gas/config/tc-i386.h 
binutils-2.15.94.0.2.2/gas/config/tc-i386.h
--- binutils-2.15.94.0.2.2.orig/gas/config/tc-i386.h    2004-12-20 
19:16:50.000000000 +0000
+++ binutils-2.15.94.0.2.2/gas/config/tc-i386.h 2005-09-13 21:41:10.000000000 
+0000
@@ -440,7 +440,6 @@

 #define md_operand(x)

-extern const struct relax_type md_relax_table[];
 #define TC_GENERIC_RELAX_TABLE md_relax_table

 extern int optimize_align_code;
diff -Naur binutils-2.15.94.0.2.2.orig/gas/write.c 
binutils-2.15.94.0.2.2/gas/write.c
--- binutils-2.15.94.0.2.2.orig/gas/write.c 2004-11-22 20:33:31.000000000 +0000
+++ binutils-2.15.94.0.2.2/gas/write.c  2005-09-13 21:43:12.000000000 +0000
@@ -2039,6 +2039,7 @@

   target = fragP->fr_offset;
   address = fragP->fr_address;
+  extern const struct relax_type md_relax_table[];  
   table = TC_GENERIC_RELAX_TABLE;
   this_state = fragP->fr_subtype;
   start_type = this_type = table + this_state;

-William-
-- 
http://linuxfromscratch.org/mailman/listinfo/lfs-support
FAQ: http://www.linuxfromscratch.org/lfs/faq.html
Unsubscribe: See the above information page

Reply via email to