This is the mail archive of the binutils@sourceware.cygnus.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: IEEE support issues


On Sat, 1 Jul 2000, Alexander Aganichev wrote:

> 1. This code in ieee.c was fixed in CVS but then reverted:

No, your patch of 2000-06-20 wasn't reverted.  It was the incorrect
2000-06-25 patch to ar.c and bucomm.c that I reverted.

> 2. The second issue I found is that GCC and Binutils differently parses
> size in .stab debug information: GCC produces sizes in bits and Binutils
> assumes bytes. I don't know who is right (though it seems like GCC) but
> this issue should be resolved. Currently I've added division by 8 to the
> parse_stab_type() (stabs.c) as follows:

Thanks for debugging this.  Your patch looks OK to me, but in future
please provide patches using "diff -up" along with a plain text changelog
entry like the example below.  Changing binutils internal debug structures
to store size in bits is probably more correct, but a much larger change.
I'll check in the following:


binutils/ChangeLog
2000-07-01  Alexander Aganichev <AAganichev@hypercom.com>

	* stabs.c (parse_stab_type): Divide size in bits by 8 as binutils
	struct debug_type stores size in bytes.

Index: stabs.c
===================================================================
RCS file: /cvs/src/src/binutils/stabs.c,v
retrieving revision 1.4
diff -u -p -r1.4 stabs.c
--- stabs.c	2000/01/14 23:10:21	1.4
+++ stabs.c	2000/07/01 09:38:33
@@ -1261,6 +1261,7 @@ parse_stab_type (dhandle, info, typename
 	    {
 	    case 's':
 	      size = atoi (attr + 1);
+	      size /= 8;  /* Size is in bits.  We store it in bytes.  */
 	      if (size <= 0)
 		size = -1;
 	      break;

-- 
Linuxcare.  Support for the Revolution.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]