From: Xianyi Date: Thu, 17 Feb 2011 19:00:58 +0000 (+0800) Subject: fixed #4 csrot & drot returned the wrong result when incx==incy==0 on i686 arch. X-Git-Tag: v0.1alpha1~24 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=bfaa80c3164ae757ef8541f00d30f8300dda5ae0;p=platform%2Fupstream%2Fopenblas.git fixed #4 csrot & drot returned the wrong result when incx==incy==0 on i686 arch. --- diff --git a/kernel/x86/rot_sse2.S b/kernel/x86/rot_sse2.S index 8ec1d44..e9c5ba1 100644 --- a/kernel/x86/rot_sse2.S +++ b/kernel/x86/rot_sse2.S @@ -859,6 +859,10 @@ .L50: movl N, I + cmpl $0, INCX + je .L56 + cmpl $0, INCY + je .L56 sarl $2, I jle .L55 ALIGN_3 diff --git a/kernel/x86/zrot_sse.S b/kernel/x86/zrot_sse.S index d8d0100..d10183f 100644 --- a/kernel/x86/zrot_sse.S +++ b/kernel/x86/zrot_sse.S @@ -1285,6 +1285,12 @@ .L50: movl N, I +//if incx ==0 || incy==0 jump to the tail + cmpl $0, INCX + je .L56 + cmpl $0, INCY + je .L56 + sarl $2, I jle .L55 ALIGN_3