Ref #740: updated asum_vfp.S and iamax_vfp.S
authorWerner Saar <wernsaar@googlemail.com>
Sat, 23 Jan 2016 13:44:34 +0000 (14:44 +0100)
committerWerner Saar <wernsaar@googlemail.com>
Sat, 23 Jan 2016 13:44:34 +0000 (14:44 +0100)
kernel/arm/asum_vfp.S
kernel/arm/iamax_vfp.S

index 2b6ceb1..fe6242a 100644 (file)
@@ -367,12 +367,12 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
        .align 5
 
-#if defined(DOUBLE)
-       vsub.f64                d0 , d0 , d0
-       vsub.f64                d1 , d1 , d1
-#else
-       vsub.f32                s0 , s0 , s0
-       vsub.f32                s1 , s1 , s1
+        movs    r12, #0                                          // clear floating point register
+        vmov    s0, r12
+        vmov    s1, r12
+#if     defined(DOUBLE)
+        vcvt.f64.f32    d0, s0
+        vcvt.f64.f32    d1, s1
 #endif
 
        cmp     N, #0
index f50c28e..fab05c9 100644 (file)
@@ -341,11 +341,12 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
        .align 5
        push    {r4}
 
-#if defined(DOUBLE)
-       vsub.f64                d0 , d0 , d0
-#else
-       vsub.f32                s0 , s0 , s0
+        movs    r12, #0                                          // clear floating point register
+        vmov    s0, r12
+#if     defined(DOUBLE)
+        vcvt.f64.f32    d0, s0
 #endif
+
        mov     INDEX, #0
 
        cmp     N, #0