http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34040

--- Comment #13 from Oleg Endo <olegendo at gcc dot gnu.org> ---
(In reply to Francois-Xavier Coudert from comment #11)
> As far as I can say, the targets with this problem are: avr, bfin, h8300,
> picochip and sh (for some subtargets of sh).
> 
> On avr, bfin, h8300 and picochip, we're doomed anyway because there is no
> double-sized type at all. On sh, we could use long double math calls.
> 
> I'm making this into an enhancement; it will probably be very painful,
> because most of the front-end assumes FLOAT_TYPE_SIZE == 32 and
> DOUBLE_TYPE_SIZE == 64.

I think it would be easier to leave DOUBLE_TYPE_SIZE == 64 in all cases and use
software fp if the hardware can't do double precision.  If users insist on
doubles being automatically truncated to floats then there should be a compiler
switch for that.  E.g. on SH we have -m4-single-only option to control this. 
On SH2E code would then use hardware fp for floats and software fp for doubles
by default.

Reply via email to