[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Inline assembler fallback for _FPU_SETCW() missing in MINGW librarie
From: |
thomasmorley65 |
Subject: |
Re: Inline assembler fallback for _FPU_SETCW() missing in MINGW libraries (issue 577450043 by address@hidden) |
Date: |
Fri, 31 Jan 2020 16:39:40 -0800 |
On 2020/01/31 10:45:42, trueroad wrote:
> Hello Arnold.
> Thank you for your patch.
>
> If I understand correctly, we only need check the definitions of
`__x86__` and
> `__i386__` check.
>
> In x86_64 environment, neither `__x86__` nor `__i386__` are defined.
>
> ```
> $ echo | x86_64-w64-mingw32-gcc -dM -E - | grep "__x86__"
>
> $ echo | x86_64-w64-mingw32-gcc -dM -E - | grep "__i386__"
>
> $ echo | i686-w64-mingw32-gcc -dM -E - | grep "__x86__"
>
> $ echo | i686-w64-mingw32-gcc -dM -E - | grep "__i386__"
> #define __i386__ 1
>
> $
> ```
>
> Therefore, `defined (__code_model_32__)` is not necessary.
>
> If `__SSE2_MATH__` is defined, it only indicates that main.cc is
compiled with
> SSE2 math enabled.
> Shared libraries such as libguile may still use x86 FPU.
> If the floating point calculation inside GUILE uses x86 FPU, we need
to set the
> precision even if C++ uses SSE2.
>
> Therefore, `defined (__SSE2_MATH__)` is not necessary.
>
> Furthermore, if the floating-point operations of all modules use SSE2,
setting
> the x86 FPU precision has no effect because it is not used.
> In other words, there is no problem even if the precision is set on a
platform
> that does not need to set.
>
> Therefore, environment definitions such as `defined (__MINGW32__)` is
not
> necessary.
Per accident I've done a new Rietveld issue while updating current patch
witch Masamichi-san's suggestions (Hopefully without mistakes).
Please look here:
https://codereview.appspot.com/575600043/
https://codereview.appspot.com/577450043/
- Re: Inline assembler fallback for _FPU_SETCW() missing in MINGW libraries (issue 577450043 by address@hidden), (continued)
Re: Inline assembler fallback for _FPU_SETCW() missing in MINGW libraries (issue 577450043 by address@hidden),
thomasmorley65 <=