fix NAN handling
This commit is contained in:
@@ -60,8 +60,10 @@
|
|||||||
#ifdef WINDOWS_ABI
|
#ifdef WINDOWS_ABI
|
||||||
movq 40(%rsp), X
|
movq 40(%rsp), X
|
||||||
movq 48(%rsp), INCX
|
movq 48(%rsp), INCX
|
||||||
|
movq 64(%rsp), %r9
|
||||||
movaps %xmm3, %xmm0
|
movaps %xmm3, %xmm0
|
||||||
|
#else
|
||||||
|
movq 24(%rsp), %r9
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
SAVEREGISTERS
|
SAVEREGISTERS
|
||||||
@@ -73,6 +75,10 @@
|
|||||||
lea (, INCX, SIZE), INCX
|
lea (, INCX, SIZE), INCX
|
||||||
comisd %xmm0, %xmm1
|
comisd %xmm0, %xmm1
|
||||||
jne .L100
|
jne .L100
|
||||||
|
jp .L100
|
||||||
|
|
||||||
|
cmpq $1, %r9
|
||||||
|
je .L100
|
||||||
|
|
||||||
/* Alpha == ZERO */
|
/* Alpha == ZERO */
|
||||||
cmpq $SIZE, INCX
|
cmpq $SIZE, INCX
|
||||||
|
|||||||
@@ -74,7 +74,7 @@
|
|||||||
pxor %xmm15, %xmm15
|
pxor %xmm15, %xmm15
|
||||||
comisd %xmm0, %xmm15
|
comisd %xmm0, %xmm15
|
||||||
jne .L30 # Alpha_r != ZERO
|
jne .L30 # Alpha_r != ZERO
|
||||||
|
jp .L30
|
||||||
comisd %xmm1, %xmm15
|
comisd %xmm1, %xmm15
|
||||||
jne .L30 # Alpha_i != ZERO
|
jne .L30 # Alpha_i != ZERO
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user