[llvm-commits] [llvm] r49458 -	/llvm/trunk/lib/Transforms/IPO/SimplifyLibCalls.cpp
    Chris Lattner 
    sabre at nondot.org
       
    Thu Apr 10 09:23:34 PDT 2008
    
    
  
On Apr 10, 2008, at 1:58 AM, Duncan Sands wrote:
> Hi,
>
>> +      // x    pow(x, 0.5)  sqrt(x)
>> +      // ---------------------------------------------
>> +      // -0.0    +0.0       -0.0
>> +      // -inf    +inf       NaN
>
> looks like pow is broken.  Is pow's behaviour documented
> anywhere?  On my machine the man page says:
>
>       The pow() function can return the following error:
>
>       EDOM   The  argument x is negative and y is not an integral  
> value.  This would result in a complex num‐
>              ber.
>
> Are you sure errno is not being set by pow in these cases?
Incidentally, gcc also does not perform this xform unless 'unsafe math  
optzns' are enabled.
-Chris
    
    
More information about the llvm-commits
mailing list