cpp.texi (__GCC_IEC_559, [...]): Document macros.
* doc/cpp.texi (__GCC_IEC_559, __GCC_IEC_559_COMPLEX): Document
macros.
* target.def (float_exceptions_rounding_supported_p): New hook.
* targhooks.c (default_float_exceptions_rounding_supported_p): New
function.
* targhooks.h (default_float_exceptions_rounding_supported_p):
Declare.
* doc/tm.texi.in (TARGET_FLOAT_EXCEPTIONS_ROUNDING_SUPPORTED_P):
New @hook.
* doc/tm.texi: Regenerate.
* config.gcc (powerpc*-*-linux*): Set extra_objs.
* config/rs6000/rs6000-linux.c: New file.
* config/rs6000/rs6000-protos.h
(rs6000_linux_float_exceptions_rounding_supported_p): Declare.
* config/rs6000/linux.h
(TARGET_FLOAT_EXCEPTIONS_ROUNDING_SUPPORTED_P): New macro.
* config/rs6000/linux64.h
(TARGET_FLOAT_EXCEPTIONS_ROUNDING_SUPPORTED_P): Likewise.
* config/rs6000/t-linux (rs6000-linux.o): New rule.
* config/rs6000/t-linux64 (rs6000-linux.o): Likewise.
c-family:
* c-cppbuiltin.c (cpp_iec_559_value, cpp_iec_559_complex_value):
New functions.
(c_cpp_builtins): Define __GCC_IEC_559 and __GCC_IEC_559_COMPLEX.
testsuite:
* gcc.dg/iec-559-macros-1.c, gcc.dg/iec-559-macros-2.c,
gcc.dg/iec-559-macros-3.c, gcc.dg/iec-559-macros-4.c,
gcc.dg/iec-559-macros-5.c, gcc.dg/iec-559-macros-6.c,
gcc.dg/iec-559-macros-7.c, gcc.dg/iec-559-macros-8.c,
gcc.dg/iec-559-macros-9.c: New tests.
From-SVN: r204351
26 files changed: