Creating imaginary inf/nan in GCC
Kaveh R. Ghazi
ghazi@caip.rutgers.edu
Sat Jan 31 10:14:00 GMT 2009
From: "Tobias Burnus" <burnus@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.
Regards,
--Kaveh
More information about the Gcc
mailing list