small optimizations on dot-kernels
authorwernsaar <wernsaar@googlemail.com>
Mon, 11 Nov 2013 14:47:56 +0000 (15:47 +0100)
committerwernsaar <wernsaar@googlemail.com>
Mon, 11 Nov 2013 14:47:56 +0000 (15:47 +0100)
kernel/arm/cdot_vfpv3.S
kernel/arm/ddot_vfpv3.S
kernel/arm/sdot_vfpv3.S
kernel/arm/zdot_vfpv3.S

index 2618089..b653888 100644 (file)
@@ -26,7 +26,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 *****************************************************************************/
 
 /**************************************************************************************
-* 2013/11/08 Saar
+* 2013/11/11 Saar
 *       BLASTEST               : OK
 *       CTEST                  : OK
 *       TEST                   : OK
@@ -56,7 +56,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #define Y      r6
 #define INC_Y  r7
 
-#define X_PRE  256
+#define X_PRE  512
 
 /**************************************************************************************
 * Macro definitions
index 12d9e21..ab819ec 100644 (file)
@@ -26,7 +26,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 *****************************************************************************/
 
 /**************************************************************************************
-* 2013/11/07 Saar
+* 2013/11/11 Saar
 *       BLASTEST               : OK
 *       CTEST                  : OK
 *       TEST                   : OK
@@ -56,7 +56,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #define Y      r6
 #define INC_Y  r7
 
-#define X_PRE  256
+#define X_PRE  512
 
 /**************************************************************************************
 * Macro definitions
@@ -65,14 +65,18 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 .macro KERNEL_F4
 
        pld     [ X, #X_PRE  ]
+       fldmiad X!, { d8 }
        pld     [ Y, #X_PRE  ]
-       fldmiad X!, { d8 - d9 }
-       fldmiad Y!, { d4 - d5}
+       fldmiad Y!, { d4 }
+       fldmiad Y!, { d}
        fmacd   d0  , d4,  d8
-       fldmiad X!, { d10 - d11 }
+       fldmiad X!, { d9 }
+       fldmiad Y!, { d6 }
        fmacd   d1  , d5,  d9
-       fldmiad Y!, { d6 - d7 }
+       fldmiad X!, { d10 }
+       fldmiad X!, { d11 }
        fmacd   d0  , d6,  d10
+       fldmiad Y!, { d7 }
        fmacd   d1  , d7,  d11
 
 .endm
@@ -176,6 +180,12 @@ ddot_kernel_F4:
        KERNEL_F4
 
        subs    I, I, #1
+       ble     ddot_kernel_F1
+
+
+       KERNEL_F4
+
+       subs    I, I, #1
        bne     ddot_kernel_F4
 
 ddot_kernel_F1:
index 1643874..794e073 100644 (file)
@@ -26,7 +26,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 *****************************************************************************/
 
 /**************************************************************************************
-* 2013/11/07 Saar
+* 2013/11/11 Saar
 *       BLASTEST               : OK
 *       CTEST                  : OK (no test for dsdot)
 *       TEST                   : OK (no test for dsdot)
@@ -56,7 +56,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #define Y      r6
 #define INC_Y  r7
 
-#define X_PRE  256
+#define X_PRE  512
 
 /**************************************************************************************
 * Macro definitions
index 2aa9171..1a78b5a 100644 (file)
@@ -26,7 +26,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 *****************************************************************************/
 
 /**************************************************************************************
-* 2013/11/08 Saar
+* 2013/11/11 Saar
 *       BLASTEST               : OK
 *       CTEST                  : OK
 *       TEST                   : OK
@@ -56,7 +56,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #define Y      r6
 #define INC_Y  r7
 
-#define X_PRE  256
+#define X_PRE  512
 
 /**************************************************************************************
 * Macro definitions