FreeBSD Bugzilla – Attachment 186320 Details for
Bug 222247
libmsun tests does not compile during a buildworld
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Self-contained macros redefinitions fix
ieeefp.h-self_contained_fix.patch (text/plain), 3.04 KB, created by
Bertrand Petit
on 2017-09-13 06:08:02 UTC
(
hide
)
Description:
Self-contained macros redefinitions fix
Filename:
MIME Type:
Creator:
Bertrand Petit
Created:
2017-09-13 06:08:02 UTC
Size:
3.04 KB
patch
obsolete
>diff -r 077d55401303 sys/i386/include/ieeefp.h >--- a/sys/i386/include/ieeefp.h Mon Sep 11 06:14:50 2017 +0200 >+++ b/sys/i386/include/ieeefp.h Wed Sep 13 07:55:20 2017 +0200 >@@ -108,12 +108,12 @@ > > #ifdef __GNUCLIKE_ASM > >-#define __fldcw(addr) __asm __volatile("fldcw %0" : : "m" (*(addr))) >-#define __fldenv(addr) __asm __volatile("fldenv %0" : : "m" (*(addr))) >-#define __fnclex() __asm __volatile("fnclex") >-#define __fnstcw(addr) __asm __volatile("fnstcw %0" : "=m" (*(addr))) >-#define __fnstenv(addr) __asm __volatile("fnstenv %0" : "=m" (*(addr))) >-#define __fnstsw(addr) __asm __volatile("fnstsw %0" : "=m" (*(addr))) >+#define __I3E_fldcw(addr) __asm __volatile("fldcw %0" : : "m" (*(addr))) >+#define __I3E_fldenv(addr) __asm __volatile("fldenv %0" : : "m" (*(addr))) >+#define __I3E_fnclex() __asm __volatile("fnclex") >+#define __I3E_fnstcw(addr) __asm __volatile("fnstcw %0" : "=m" (*(addr))) >+#define __I3E_fnstenv(addr) __asm __volatile("fnstenv %0" : "=m" (*(addr))) >+#define __I3E_fnstsw(addr) __asm __volatile("fnstsw %0" : "=m" (*(addr))) > > /* > * Load the control word. Be careful not to trap if there is a currently >@@ -132,15 +132,15 @@ > unsigned short _sw; > > if ((_cw & FP_MSKS_FLD) != FP_MSKS_FLD) { >- __fnstsw(&_sw); >+ __I3E_fnstsw(&_sw); > if (((_sw & ~_cw) & FP_STKY_FLD) != 0) { >- __fnstenv(&_env); >+ __I3E_fnstenv(&_env); > _env._cw = _newcw; >- __fldenv(&_env); >+ __I3E_fldenv(&_env); > return; > } > } >- __fldcw(&_newcw); >+ __I3E_fldcw(&_newcw); > } > > static __inline fp_rnd_t >@@ -148,7 +148,7 @@ > { > unsigned short _cw; > >- __fnstcw(&_cw); >+ __I3E_fnstcw(&_cw); > return ((fp_rnd_t)((_cw & FP_RND_FLD) >> FP_RND_OFF)); > } > >@@ -158,7 +158,7 @@ > fp_rnd_t _p; > unsigned short _cw, _newcw; > >- __fnstcw(&_cw); >+ __I3E_fnstcw(&_cw); > _p = (fp_rnd_t)((_cw & FP_RND_FLD) >> FP_RND_OFF); > _newcw = _cw & ~FP_RND_FLD; > _newcw |= (_m << FP_RND_OFF) & FP_RND_FLD; >@@ -171,7 +171,7 @@ > { > unsigned short _cw; > >- __fnstcw(&_cw); >+ __I3E_fnstcw(&_cw); > return ((fp_prec_t)((_cw & FP_PRC_FLD) >> FP_PRC_OFF)); > } > >@@ -181,7 +181,7 @@ > fp_prec_t _p; > unsigned short _cw, _newcw; > >- __fnstcw(&_cw); >+ __I3E_fnstcw(&_cw); > _p = (fp_prec_t)((_cw & FP_PRC_FLD) >> FP_PRC_OFF); > _newcw = _cw & ~FP_PRC_FLD; > _newcw |= (_m << FP_PRC_OFF) & FP_PRC_FLD; >@@ -200,7 +200,7 @@ > { > unsigned short _cw; > >- __fnstcw(&_cw); >+ __I3E_fnstcw(&_cw); > return ((~_cw & FP_MSKS_FLD) >> FP_MSKS_OFF); > } > >@@ -210,7 +210,7 @@ > fp_except_t _p; > unsigned short _cw, _newcw; > >- __fnstcw(&_cw); >+ __I3E_fnstcw(&_cw); > _p = (~_cw & FP_MSKS_FLD) >> FP_MSKS_OFF; > _newcw = _cw & ~FP_MSKS_FLD; > _newcw |= (~_m << FP_MSKS_OFF) & FP_MSKS_FLD; >@@ -224,7 +224,7 @@ > unsigned _ex; > unsigned short _sw; > >- __fnstsw(&_sw); >+ __I3E_fnstsw(&_sw); > _ex = (_sw & FP_STKY_FLD) >> FP_STKY_OFF; > return ((fp_except_t)_ex); > } >@@ -244,12 +244,12 @@ > if ((_p & ~_m) == _p) > return (_p); > if ((_p & ~_m) == 0) { >- __fnclex(); >+ __I3E_fnclex(); > return (_p); > } >- __fnstenv(&_env); >+ __I3E_fnstenv(&_env); > _env._sw &= ~_m; >- __fldenv(&_env); >+ __I3E_fldenv(&_env); > return (_p); > } >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 222247
:
186295
| 186320