[rtems commit] i386: Replace fpcr clobber with memory clobber
Sebastian Huber
sebh at rtems.org
Sun Jul 5 16:00:53 UTC 2020
Module: rtems
Branch: master
Commit: d0c1ce658ed1e1510f54279f662fc8a096cae6f7
Changeset: http://git.rtems.org/rtems/commit/?id=d0c1ce658ed1e1510f54279f662fc8a096cae6f7
Author: Sebastian Huber <sebastian.huber at embedded-brains.de>
Date: Tue Apr 21 10:17:00 2020 +0200
i386: Replace fpcr clobber with memory clobber
Update #3943.
---
cpukit/score/cpu/i386/include/rtems/score/cpu.h | 4 ++--
cpukit/score/cpu/i386/sse_test.c | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/cpukit/score/cpu/i386/include/rtems/score/cpu.h b/cpukit/score/cpu/i386/include/rtems/score/cpu.h
index 225b728..632bf5f 100644
--- a/cpukit/score/cpu/i386/include/rtems/score/cpu.h
+++ b/cpukit/score/cpu/i386/include/rtems/score/cpu.h
@@ -621,7 +621,7 @@ void _CPU_Context_save_fp(
__asm__ __volatile__( \
"fldcw %0" \
::"m"((*(fp_context_pp))->fpucw) \
- :"fpcr" \
+ :"memory" \
); \
__builtin_ia32_ldmxcsr(_Thread_Executing->fp_context->mxcsr); \
} while (0)
@@ -640,7 +640,7 @@ void _CPU_Context_restore_fp(
: \
:"st","st(1)","st(2)","st(3)", \
"st(4)","st(5)","st(6)","st(7)", \
- "fpsr","fpcr" \
+ "fpsr","memory" \
); \
if ( _Thread_Executing->fp_context ) { \
_CPU_Context_restore_fp(&_Thread_Executing->fp_context); \
diff --git a/cpukit/score/cpu/i386/sse_test.c b/cpukit/score/cpu/i386/sse_test.c
index dc87371..14e7dd9 100644
--- a/cpukit/score/cpu/i386/sse_test.c
+++ b/cpukit/score/cpu/i386/sse_test.c
@@ -229,7 +229,7 @@ fp_ld(Context_Control_sse *p_ctxt, int i)
#define FPUCLOBBER \
"st","st(1)","st(2)","st(3)", \
"st(4)","st(5)","st(6)","st(7)",\
- "fpsr","fpcr"
+ "fpsr","memory"
/* There seems to be no way to say that mxcsr was clobbered */
More information about the vc
mailing list