On Sat, Jan 31, 2009 at 5:26 AM, Kaveh R. Ghazi <gh...@caip.rutgers.edu> wrote:
> From: "Tobias Burnus" <bur...@net-b.de>
>
>> Hi Kaveh,
>>
>> Kaveh R. GHAZI wrote:
>>>
>>> I'm trying to create complex number expressions that contain inf or
>>> nan in the imaginary part.  I.e. (0 + inf I) or (0 + nan I).
>>
>> If it does not need to be C (e.g. to try MPC in the middle end), you
>> could use Fortran:
>>
>> ! compile with gfortran -fno-range-check
>> complex :: z
>> z = cmplx(0.0, 0.0/0.0)
>> print *, z
>> end
>>
>> Tobias
>
> Thanks, I do want to test the middle-end.  However I need to do more than
> just create the complex expression.  I also have to pass it to a builtin
> that evaluates using MPC like __builtin_csin().  The fortran frontend
> evaluates complex transcendentals in fortran/simplify.c, not in the
> middle-end.  So it wouldn't test what I want AFAICT.  It's not a big deal,
> the nan cases are error paths that should *avoid* folding via MPC.

If you go through memory the compiler should promote that to a register
and constant propagate the result, isn't that enough?

Thanks,
Richard.

>       Regards,
>       --Kaveh
>
>

Reply via email to