[Bug target/93709] [10 regression] fortran.dg/minlocval_4.f90 fails on power 9 after r10-4161

guojiufu at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Fri Feb 21 09:50:00 GMT 2020


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93709

--- Comment #5 from Jiu Fu Guo <guojiufu at gcc dot gnu.org> ---
There are below difference between data/instructions for P8 and P9:
(maxlocval_4.f90)

f29=-inf
f30=-inf
f31=nan

P9:
xsmaxcdp vs31,vs29,vs31  ==> vs31/f31:nan (smax(-inf, nan)-->nan)
b       0x10004b60 <MAIN__+15760> 

P8:
fcmpu   cr0,f29,f31
blt     0x10004c20 <MAIN__+15952>  (not jump,  -inf < nan --> false"
fmr     f31,f29             ==>f31:-inf
b       0x10004c20 <MAIN__+15952>

On P9, 'f31' becomes ‘nan’ by instruction "xsmaxcdp".
While on P8, 'f31' becomes '-inf' through "fcmpu and blt".


More information about the Gcc-bugs mailing list