sfp-exceptions.c (__sfp_handle_exceptions): Emit SSE instructions for 64bit targets only.
* config/i386/sfp-exceptions.c (__sfp_handle_exceptions): Emit SSE instructions for 64bit targets only. From-SVN: r192355
This commit is contained in:
parent
1e2a71c8bf
commit
945a9c1f6d
2 changed files with 7 additions and 2 deletions
|
@ -1,3 +1,8 @@
|
|||
2012-10-10 Uros Bizjak <ubizjak@gmail.com>
|
||||
|
||||
* config/i386/sfp-exceptions.c (__sfp_handle_exceptions): Emit SSE
|
||||
instructions for 64bit targets only.
|
||||
|
||||
2012-10-10 Uros Bizjak <ubizjak@gmail.com>
|
||||
|
||||
* config/i386/sfp-machine.h (FP_RND_NEAREST, FP_RND_ZERO, FP_RND_PINF,
|
||||
|
|
|
@ -46,7 +46,7 @@ __sfp_handle_exceptions (int _fex)
|
|||
if (_fex & FP_EX_INVALID)
|
||||
{
|
||||
float f = 0.0f;
|
||||
#ifdef __SSE__
|
||||
#ifdef __x86_64__
|
||||
asm volatile ("%vdivss\t{%0, %d0|%d0, %0}" : "+x" (f));
|
||||
#else
|
||||
asm volatile ("fdiv\t{%y0, %0|%0, %y0}" : "+t" (f));
|
||||
|
@ -56,7 +56,7 @@ __sfp_handle_exceptions (int _fex)
|
|||
if (_fex & FP_EX_DIVZERO)
|
||||
{
|
||||
float f = 1.0f, g = 0.0f;
|
||||
#ifdef __SSE__
|
||||
#ifdef __x86_64__
|
||||
asm volatile ("%vdivss\t{%1, %d0|%d0, %1}" : "+x" (f) : "xm" (g));
|
||||
#else
|
||||
asm volatile ("fdivs\t%1" : "+t" (f) : "m" (g));
|
||||
|
|
Loading…
Add table
Reference in a new issue