On 16 May 2018 at 22:17, Kalamatee <kalama...@gmail.com> wrote: > Hi, > > After hunting out a problem using the softloat code on m68k, with the > assistance of the WinUAE author (Toni Wilen) we think we have noticed a bug > dating back to 1994. > > Laddsf$nf returns values with the wrong sign, because it clears the sign > bit, before caching the wrong value and then attempting to use it. > > the movel d0,d7 is either in the wrong place (should be before the sign > bit is cleared), or it should be removed completely and the following > andl IMM (0x80000000),d7 should be changed to use d2 instead (which should > have the correct sign from the prior eorl) >
I forgot to mention this is in libgcc/config/m68k/lb1sf68.S