On 07/12/2011 10:07 AM, Rainer Orth wrote: > Only a couple of special defines (like FLOAT_WORD_ORDER_MISMATCH, > QUIET_NAN_NEGATED) are moved to special t-* files in libgcc/config with > [FDT]PBIT_CFLAGS similar to e.g. LIBGCC_SYNC_CFLAGS. If it were > possible to have gcc define some __LIBGCC_* macro corresponding to them, > that would allow for further simplification. Only if this mechanism > couldn't handle the requirements have I resorted to introducing > libgcc_tm_file snippets to handle them.
Re QUIET_NAN_NEGATED, it seems like we should be able to make use of the __builtin_nan("") function. Perhaps if (isnan (src)) { FLO_type ret = __builtin_nan(""); if (sign) ret = -ret; return ret; } ... assuming __builtin_nan gets re-defined in fp-bit for the type as appropriate. r~