From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alan Modra To: Alexander Aganichev Cc: binutils@sourceware.cygnus.com Subject: Re: IEEE support issues Date: Sat, 01 Jul 2000 03:00:00 -0000 Message-id: References: X-SW-Source: 2000-07/msg00001.html 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 * 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.