diff options
author | burnus <burnus@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-12-11 19:50:56 +0000 |
---|---|---|
committer | burnus <burnus@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-12-11 19:50:56 +0000 |
commit | 8a5b89a3adf30b4e0d2fdf7953384634b3648805 (patch) | |
tree | 616c7233ee1ce5d5f32e62d991dd9e454dcff515 /libgfortran | |
parent | 433e804e86dd7cc6234ea6d992e529938e27d47c (diff) | |
download | gcc-8a5b89a3adf30b4e0d2fdf7953384634b3648805.tar.gz |
2013-12-11 Tobias Burnus <burnus@net-b.de>
* config/fpu-387.h (sigill_hdlr, get_fpu_rounding_mode): Emit
* SSE
instructions when __SSE_MATH__ is defined.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@205903 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libgfortran')
-rw-r--r-- | libgfortran/ChangeLog | 5 | ||||
-rw-r--r-- | libgfortran/config/fpu-387.h | 6 |
2 files changed, 8 insertions, 3 deletions
diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog index 02524ad3539..ec2be14a4b6 100644 --- a/libgfortran/ChangeLog +++ b/libgfortran/ChangeLog @@ -1,3 +1,8 @@ +2013-12-11 Tobias Burnus <burnus@net-b.de> + + * config/fpu-387.h (sigill_hdlr, get_fpu_rounding_mode): Emit SSE + instructions when __SSE_MATH__ is defined. + 2013-12-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> * intrinsics/erfc_scaled.c (_M_2_SQRTPI): Define if missing. diff --git a/libgfortran/config/fpu-387.h b/libgfortran/config/fpu-387.h index b35c315445c..0317ef19222 100644 --- a/libgfortran/config/fpu-387.h +++ b/libgfortran/config/fpu-387.h @@ -23,7 +23,7 @@ a copy of the GCC Runtime Library Exception along with this program; see the files COPYING3 and COPYING.RUNTIME respectively. If not, see <http://www.gnu.org/licenses/>. */ -#ifndef __x86_64__ +#ifndef __SSE_MATH__ #include "cpuid.h" #endif @@ -50,7 +50,7 @@ sigill_hdlr (int sig __attribute((unused)), static int has_sse (void) { -#ifndef __x86_64__ +#ifndef __SSE_MATH__ unsigned int eax, ebx, ecx, edx; if (!__get_cpuid (1, &eax, &ebx, &ecx, &edx)) @@ -227,7 +227,7 @@ get_fpu_rounding_mode (void) { int round_mode; -#ifdef __x86_64__ +#ifdef __SSE_MATH__ unsigned int cw; __asm__ __volatile__ ("%vstmxcsr\t%0" : "=m" (cw)); |