aboutsummaryrefslogtreecommitdiff
path: root/libgfortran
diff options
context:
space:
mode:
authorUros Bizjak <ubizjak@gmail.com>2012-09-05 23:43:45 +0200
committerUros Bizjak <uros@gcc.gnu.org>2012-09-05 23:43:45 +0200
commit588dbb19143ba4b5575fa63b73c5a4c67e7857db (patch)
tree7b436da45fa571cb569808b9ad6fff6581ef93dd /libgfortran
parent5285c21c6eb79ea45cde5e3d83d5cc127629d20d (diff)
downloadgcc-588dbb19143ba4b5575fa63b73c5a4c67e7857db.zip
gcc-588dbb19143ba4b5575fa63b73c5a4c67e7857db.tar.gz
gcc-588dbb19143ba4b5575fa63b73c5a4c67e7857db.tar.bz2
fpu-387.h (set_fpu): Prefix stmxcsr and ldmxcsr with %v.
* config/fpu-387.h (set_fpu): Prefix stmxcsr and ldmxcsr with %v. From-SVN: r190997
Diffstat (limited to 'libgfortran')
-rw-r--r--libgfortran/ChangeLog3
-rw-r--r--libgfortran/config/fpu-387.h4
2 files changed, 3 insertions, 4 deletions
diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog
index 80d7b53..b5664f3 100644
--- a/libgfortran/ChangeLog
+++ b/libgfortran/ChangeLog
@@ -1,7 +1,6 @@
2012-09-05 Uros Bizjak <ubizjak@gmail.com>
- * config/fpu-387.h (set_fpu): Use __builtin_ia32_stmxcsr and
- __builtin_ia32_ldmxcsr intrinsics.
+ * config/fpu-387.h (set_fpu): Prefix stmxcsr and ldmxcsr with %v.
2012-07-25 Andreas Schwab <schwab@linux-m68k.org>
diff --git a/libgfortran/config/fpu-387.h b/libgfortran/config/fpu-387.h
index 0e87aab..d2b7a05 100644
--- a/libgfortran/config/fpu-387.h
+++ b/libgfortran/config/fpu-387.h
@@ -118,7 +118,7 @@ void set_fpu (void)
{
unsigned int cw_sse;
- cw_sse = __builtin_ia32_stmxcsr ();
+ asm volatile ("%vstmxcsr %0" : "=m" (cw_sse));
cw_sse &= 0xffff0000;
cw_sse |= (_FPU_MASK_IM | _FPU_MASK_DM | _FPU_MASK_ZM | _FPU_MASK_OM
@@ -131,6 +131,6 @@ void set_fpu (void)
if (options.fpe & GFC_FPE_UNDERFLOW) cw_sse &= ~(_FPU_MASK_UM << 7);
if (options.fpe & GFC_FPE_INEXACT) cw_sse &= ~(_FPU_MASK_PM << 7);
- __builtin_ia32_ldmxcsr (cw_sse);
+ asm volatile ("%vldmxcsr %0" : : "m" (cw_sse));
}
}