#1377 gas 2.2.0 generates wrong code

closed-fixed
nobody
binutils (105)
2010-07-14
2009-12-13
No

This bug in gnu assembler 2.2.0 http://sourceware.org/bugzilla/show_bug.cgi?id=10856 miscompiles Crypto++, causing pycryptopp and Tahoe-LAFS, which depend on Crypto++, to fail: http://allmydata.org/trac/tahoe/ticket/853

There is a patch in gas trunk which fixes this issue, which was a regression from the previous release of gas. See the sourceware.org link above for that.

Here is the launchpad page which is tracking the progress of this issue across the numerous operating systems and open source projects which it affects:

https://bugs.launchpad.net/ubuntu/+source/binutils/+bug/461303

Discussion

  • Daira Hopwood
    Daira Hopwood
    2010-05-06

    This is a regression that causes MinGW to generate bad code. Although Crypto++ is the only package currently known to be affected, it's entirely possible that it causes problems with other code as well. Roughly when is there likely to be a MinGW release that includes the upstream patch?

     
  • According to http://tahoe-lafs.org/trac/tahoe-lafs/ticket/853#comment:27 , MinGW has upgraded binutils to 2.20.51.20100613 to fix an unrelated bug, thus fixing this bug. It would make me feel slightly more willing to contribute bug reports to MinGW in the future if some MinGW developer were to post to this ticket saying that they read it. For all I can tell no MinGW developer ever saw this ticket.

     
    • status: open --> closed-fixed
     
  • Keith Marshall
    Keith Marshall
    2010-07-16

    Well, I certainly saw it, but since I don't maintain MinGW's binutils packages, I left it to Chris, who does, to make an appropriate response; I don't know why he didn't do so on this occasion, for he is normally quite good at such things.

    Since this bug originated upstream, the fix had to come from there -- we don't do any more than generate binary packages from upstream sources. As you note, the upstream developers did fix this issue, and that has been captured in a subsequent MinGW release.

    BTW, you asked for a comment from the developers, yet you closed the ticket and simultaneously forbade comment posting. It's only because I have administrative privilege that I am able to respond; if you want further comment, you should ensure the the "Close comment posting" is NOT checked -- it is checked by default when a ticket is closed, (a default I dislike, but that's just the way it is), so you need to deselect it.

     
  • My apologies for not following up on this ticket with the new release of binutils. This particular issue had slipped my mind, but going forward I will be sure to go through the bug reports upon a new release and update the bug reports appropriately.