public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
* IEEE support issues
@ 2000-07-01  1:17 Alexander Aganichev
  2000-07-01  3:00 ` Alan Modra
  0 siblings, 1 reply; 4+ messages in thread
From: Alexander Aganichev @ 2000-07-01  1:17 UTC (permalink / raw)
  To: binutils

Hi!

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

==
  info->filename = filename;
  modname = strrchr (filename, '/');
  /* We could have a mixed forward/back slash case.  */
  backslash = strrchr (modname, '\\');
  if (backslash > modname)
    modname = backslash;

  if (modname != NULL)
    ++modname;
==

Could anyone please to replace at least `modname' with `filename' in the
second strrchr so binutils will not crash on IEEE producing? I really don't
care about signed pointers but this change is essential for me since we
regularly produce IEEE object files from COFF in our company ;-)

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:
==
       switch (*attr)
         {
         case 's':
           size = atoi (attr + 1) / 8; /* adjust the size */
           if (size <= 0)
          size = -1;
           break;

         case 'S':
           stringp = true;
           break;

         default:
           /* Ignore unrecognized type attributes, so future
           compilers can invent new ones.  */
           break;
         }
==

--
Alexander Aganichev
Hypercom Europe Limited, Inc.
Software Engineer

^ permalink raw reply	[flat|nested] 4+ messages in thread
* Re: IEEE support issues
@ 2000-07-02 22:29 Alexander Aganichev
  0 siblings, 0 replies; 4+ messages in thread
From: Alexander Aganichev @ 2000-07-02 22:29 UTC (permalink / raw)
  To: Alan Modra; +Cc: binutils

Oops, you're right. I've just been confused to know that Changelogs in
tarball binutils-000627.tar.bz2 on sourceware.cygwin.com mirrors dated
with... end of May though archive isn't. Anyone have ideas?

--
Alexander Aganichev
Hypercom Europe Limited, Inc.
Software Engineer


                                                                                                                                
                    Alan Modra                                                                                                  
                    <alan@linuxca        To:     Alexander Aganichev <AAganichev@hypercom.com>                                  
                    re.com.au>           cc:     binutils@sourceware.cygnus.com                                                 
                                         Subject:     Re: IEEE support issues                                                   
                    01.07.2000                                                                                                  
                    14:00                                                                                                       
                                                                                                                                
                                                                                                                                



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.





^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2000-07-02 22:29 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2000-07-01  1:17 IEEE support issues Alexander Aganichev
2000-07-01  3:00 ` Alan Modra
2000-07-01  3:16   ` Where should gcc-avr info files go? Russ.Shaw
2000-07-02 22:29 IEEE support issues Alexander Aganichev

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).