X-Git-Url: http://git.sourceforge.jp/view?p=pf3gnuchains%2Fgcc-fork.git;a=blobdiff_plain;f=gcc%2Fconfig%2Fi386%2Ffreebsd.h;h=52dcf1bc4c2e271a72b52cbdd64d06c8c0f951dd;hp=64b152f0d49a77951ce3d998582cc6e3717b149e;hb=e97f0bd60765119183ab4a4833d870fa04ab3cb1;hpb=2e88e31e87abf1f7ac3fbca09e834c78065b82be diff --git a/gcc/config/i386/freebsd.h b/gcc/config/i386/freebsd.h index 64b152f0d49..52dcf1bc4c2 100644 --- a/gcc/config/i386/freebsd.h +++ b/gcc/config/i386/freebsd.h @@ -133,3 +133,13 @@ Boston, MA 02111-1307, USA. */ #undef DEFAULT_PCC_STRUCT_RETURN #define DEFAULT_PCC_STRUCT_RETURN 0 + +/* FreeBSD sets the rounding precision of the FPU to 53 bits. Let the + compiler get the contents of and std::numeric_limits correct. */ +#define SUBTARGET_OVERRIDE_OPTIONS \ + do { \ + real_format_for_mode[XFmode - QFmode] \ + = &ieee_extended_intel_96_round_53_format; \ + real_format_for_mode[TFmode - QFmode] \ + = &ieee_extended_intel_96_round_53_format; \ + } while (0)