diff --git a/ChangeLog b/ChangeLog index 7ec6eec2fb..9ba337ff73 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Thu Jan 9 20:46:22 2014 Nobuyoshi Nakada + + * configure.in: use SSE2 instructions to drop unexpected precisions on + other than mingw. [ruby-core:59472] [Bug #8358] + Thu Jan 9 20:31:10 2014 NAKAMURA Usaku * hash.c (rb_objid_hash): should return `long'. brushup r44534. diff --git a/configure.in b/configure.in index f9e9431640..9c95cc4d8a 100644 --- a/configure.in +++ b/configure.in @@ -802,7 +802,6 @@ if test "$GCC" = yes; then # various headers. Most frequent situation is the use of // # comments. We bypass ANSI C mode for them. Otherwise # extension libs cannot include those headers. - RUBY_TRY_CFLAGS(-msse2 -mfpmath=sse, [RUBY_APPEND_OPTION(XCFLAGS, -msse2 -mfpmath=sse)]) ], [cygwin*|darwin*|netbsd*], [ # need lgamma_r(), finite() @@ -858,6 +857,14 @@ if test "$GCC" = yes; then for oflag in -fno-fast-math; do RUBY_TRY_CFLAGS($oflag, [RUBY_APPEND_OPTION(optflags, $oflag)]) done + AS_CASE(["$target"], + [*-darwin*], [ + # doesn't seem necessary on Mac OS X + ], + [i[4-6]86], [ + RUBY_TRY_CFLAGS(-msse2 -mfpmath=sse, [RUBY_APPEND_OPTION(XCFLAGS, -msse2 -mfpmath=sse)]) + ] + ) fi AC_ARG_WITH(opt-dir,