[llvm] a253a2a - [SDAG] fold fsub -0.0, undef to undef rather than NaN

Nuno Lopes via llvm-commits llvm-commits at lists.llvm.org
Mon Feb 24 07:44:09 PST 2020


> ----------------------------------------
> Name: t1
>  %r = fsub half 4.000000, undef
>  ret %r
> =>
>  ret undef
>  %r = fsub half 4.000000, undef
> 
> ERROR: Value mismatch
> 
> Example:
> half %r = NaN   [based on undef value]
> Source value: NaN
> Target value: #x8500 (-0.000076293945?)
> 
> 
> @Nuno: is this a bug in alive?

What Alive is trying to say is that there's no value x that makes "4.0 - x" yield the number 0x8500.
I think Alive is correct here. FP operations usually can't produce the whole range of bit-patterns.

Nuno



More information about the llvm-commits mailing list