aligned
authorAbdelRauf <quickwritereader@gmail.com>
Thu, 29 Aug 2019 23:22:23 +0000 (23:22 +0000)
committerAbdelRauf <quickwritereader@gmail.com>
Thu, 29 Aug 2019 23:22:23 +0000 (23:22 +0000)
12 files changed:
kernel/power/caxpy.c
kernel/power/cdot.c
kernel/power/cgemv_n.c
kernel/power/cgemv_t.c
kernel/power/dgemv_n.c
kernel/power/dgemv_t.c
kernel/power/sgemv_n.c
kernel/power/sgemv_n_8.c
kernel/power/sgemv_t.c
kernel/power/sgemv_t_8.c
kernel/power/zgemv_n_4.c
kernel/power/zgemv_t_4.c

index 4bdf13c..00f2ec5 100644 (file)
@@ -24,12 +24,11 @@ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
 OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
 USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 *****************************************************************************/
-
 #include "common.h"
-
 #ifndef HAVE_ASM_KERNEL
 #include <altivec.h> 
+static const unsigned char __attribute__((aligned(16))) swap_mask_arr[]={ 4,5,6,7,0,1,2,3, 12,13,14,15, 8,9,10,11};
+
 static void caxpy_kernel_16(BLASLONG n, FLOAT *x, FLOAT *y, FLOAT alpha_r, FLOAT alpha_i)
 {
 
@@ -43,7 +42,7 @@ static void caxpy_kernel_16(BLASLONG n, FLOAT *x, FLOAT *y, FLOAT alpha_r, FLOAT
     register __vector float valpha_i = {alpha_i, alpha_i,alpha_i, alpha_i};
 #endif
 
-    __vector unsigned char swap_mask = { 4,5,6,7,0,1,2,3, 12,13,14,15, 8,9,10,11};
+    __vector unsigned char swap_mask = *((__vector unsigned char*)swap_mask_arr);
     register __vector float *vy = (__vector float *) y;
     register __vector float *vx = (__vector float *) x;
     BLASLONG i=0;
index f86a33f..51d341a 100644 (file)
@@ -25,12 +25,12 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *****************************************************************************/
 
 #include "common.h"
-
 #ifndef HAVE_KERNEL_8
 #include <altivec.h> 
+static const unsigned char __attribute__((aligned(16))) swap_mask_arr[]={ 4,5,6,7,0,1,2,3, 12,13,14,15, 8,9,10,11};
 static void cdot_kernel_8(BLASLONG n, FLOAT *x, FLOAT *y, float *dot)
 {
-    __vector unsigned char swap_mask = { 4,5,6,7,0,1,2,3, 12,13,14,15, 8,9,10,11};
+    __vector unsigned char swap_mask = *((__vector unsigned char*)swap_mask_arr);
     register __vector float *vy = (__vector float *) y;
     register __vector float *vx = (__vector float *) x;
     BLASLONG i = 0;
@@ -96,7 +96,7 @@ OPENBLAS_COMPLEX_FLOAT CNAME(BLASLONG n, FLOAT *x, BLASLONG inc_x, FLOAT *y, BLA
     BLASLONG i = 0;
     BLASLONG ix=0, iy=0;
     OPENBLAS_COMPLEX_FLOAT result;
-    FLOAT dot[4] __attribute__ ((aligned(16))) = {0.0, 0.0, 0.0, 0.0};
+    FLOAT dot[4] __attribute__((aligned(16))) = {0.0, 0.0, 0.0, 0.0};
 
     if (n <= 0) {
         CREAL(result) = 0.0;
index cb01e19..6a195d6 100644 (file)
@@ -32,7 +32,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #define NBMAX 1024\r
 \r
 \r
-static const unsigned char swap_mask_arr[]={ 4,5,6,7,0,1,2,3, 12,13,14,15, 8,9,10,11};\r
+static const unsigned char __attribute__((aligned(16))) swap_mask_arr[]={ 4,5,6,7,0,1,2,3, 12,13,14,15, 8,9,10,11};\r
 \r
  \r
 static void cgemv_kernel_4x4(BLASLONG n, BLASLONG lda, FLOAT *ap, FLOAT *x, FLOAT *y) {\r
@@ -247,8 +247,8 @@ int CNAME(BLASLONG m, BLASLONG n, BLASLONG dummy1, FLOAT alpha_r, FLOAT alpha_i,
     BLASLONG m2;\r
     BLASLONG m3;\r
     BLASLONG n2;\r
-\r
-    FLOAT xbuffer[8], *ybuffer;\r
+    FLOAT xbuffer[8] __attribute__((aligned(16)));\r
+    FLOAT *ybuffer;\r
 \r
     if (m < 1) return (0);\r
     if (n < 1) return (0);\r
index c646618..68bbdd6 100644 (file)
@@ -29,7 +29,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 \r
 #define NBMAX 1024 \r
 #include <altivec.h> \r
-static const unsigned char swap_mask_arr[]={ 4,5,6,7,0,1,2,3, 12,13,14,15, 8,9,10,11};\r
+static const unsigned char __attribute__((aligned(16))) swap_mask_arr[]={ 4,5,6,7,0,1,2,3, 12,13,14,15, 8,9,10,11};\r
 \r
 static void cgemv_kernel_4x4(BLASLONG n, BLASLONG lda, FLOAT *ap, FLOAT *x, FLOAT *y, FLOAT alpha_r, FLOAT alpha_i) {\r
     BLASLONG i;\r
@@ -260,8 +260,8 @@ int CNAME(BLASLONG m, BLASLONG n, BLASLONG dummy1, FLOAT alpha_r, FLOAT alpha_i,
     BLASLONG m2;\r
     BLASLONG m3;\r
     BLASLONG n2;\r
-\r
-    FLOAT ybuffer[8], *xbuffer;\r
+    FLOAT ybuffer[8] __attribute__((aligned(16)));\r
+    FLOAT *xbuffer;\r
 \r
     if (m < 1) return (0);\r
     if (n < 1) return (0);\r
index b458e11..1a3d766 100644 (file)
@@ -145,7 +145,7 @@ int CNAME(BLASLONG m, BLASLONG n, BLASLONG dummy1, FLOAT alpha, FLOAT *a, BLASLO
        BLASLONG m3;
        BLASLONG n2;
        BLASLONG lda4 =  lda << 2;
-       FLOAT xbuffer[8] __attribute__ ((aligned (16)));;
+       FLOAT xbuffer[8] __attribute__ ((aligned (16)));
        FLOAT *ybuffer;
 
         if ( m < 1 ) return(0);
index b8589a1..d05d7b7 100644 (file)
@@ -581,9 +581,9 @@ int CNAME(BLASLONG m, BLASLONG n, BLASLONG dummy1, FLOAT alpha, FLOAT *a, BLASLO
     BLASLONG m1;
     BLASLONG m2;
     BLASLONG m3;
-    BLASLONG n2;
-
-    FLOAT ybuffer[8], *xbuffer;
+    BLASLONG n2; 
+    FLOAT ybuffer[8] __attribute__((aligned(16)));
+    FLOAT *xbuffer;
 
     if (m < 1) return (0);
     if (n < 1) return (0);
index 9704757..81ac031 100644 (file)
@@ -174,7 +174,8 @@ int CNAME(BLASLONG m, BLASLONG n, BLASLONG dummy1, FLOAT alpha, FLOAT *a, BLASLO
        BLASLONG n2;\r
        BLASLONG lda4 =  lda << 2;\r
        BLASLONG lda8 =  lda << 3;\r
-       FLOAT xbuffer[8],*ybuffer;\r
+       FLOAT xbuffer[8] __attribute__((aligned(16)));\r
+       FLOAT *ybuffer;\r
 \r
         if ( m < 1 ) return(0);\r
         if ( n < 1 ) return(0);\r
index 9bc93ce..6469623 100644 (file)
@@ -213,7 +213,8 @@ int CNAME(BLASLONG m, BLASLONG n, BLASLONG dummy1, FLOAT alpha, FLOAT *a, BLASLO
        BLASLONG n2;\r
        BLASLONG lda4 =  lda << 2;\r
        BLASLONG lda8 =  lda << 3;\r
-       FLOAT xbuffer[8],*ybuffer;\r
+       FLOAT xbuffer[8] __attribute__((aligned(16)));\r
+       FLOAT *ybuffer;\r
 \r
         if ( m < 1 ) return(0);\r
         if ( n < 1 ) return(0);\r
index 96434a1..3d8a442 100644 (file)
@@ -177,10 +177,9 @@ int CNAME(BLASLONG m, BLASLONG n, BLASLONG dummy1, FLOAT alpha, FLOAT *a, BLASLO
     BLASLONG m1;\r
     BLASLONG m2;\r
     BLASLONG m3;\r
-    BLASLONG n2;\r
-\r
-    FLOAT ybuffer[8], *xbuffer;\r
-\r
+    BLASLONG n2; \r
+    FLOAT ybuffer[8] __attribute__((aligned(16)));\r
+    FLOAT *xbuffer; \r
     if (m < 1) return (0);\r
     if (n < 1) return (0);\r
 \r
index 5e9cd63..b905121 100644 (file)
@@ -204,8 +204,8 @@ int CNAME(BLASLONG m, BLASLONG n, BLASLONG dummy1, FLOAT alpha, FLOAT *a, BLASLO
     BLASLONG m3;\r
     BLASLONG n2;\r
 \r
-    FLOAT ybuffer[8], *xbuffer;\r
-\r
+    FLOAT ybuffer[8] __attribute__((aligned(16)));\r
+    FLOAT *xbuffer; \r
     if (m < 1) return (0);\r
     if (n < 1) return (0);\r
 \r
index 167b0a1..ba019d6 100644 (file)
@@ -614,8 +614,8 @@ int CNAME(BLASLONG m, BLASLONG n, BLASLONG dummy1, FLOAT alpha_r, FLOAT alpha_i,
     BLASLONG m2;
     BLASLONG m3;
     BLASLONG n2;
-
-    FLOAT xbuffer[8], *ybuffer;
+    FLOAT xbuffer[8] __attribute__((aligned(16)));
+    FLOAT *ybuffer;
 
     if (m < 1) return (0);
     if (n < 1) return (0);
index 20a0812..b34199a 100644 (file)
@@ -532,8 +532,8 @@ int CNAME(BLASLONG m, BLASLONG n, BLASLONG dummy1, FLOAT alpha_r, FLOAT alpha_i,
     BLASLONG m2;
     BLASLONG m3;
     BLASLONG n2;
-
-    FLOAT ybuffer[8], *xbuffer;
+    FLOAT ybuffer[8] __attribute__((aligned(16)));
+    FLOAT *xbuffer;
 
     if (m < 1) return (0);
     if (n < 1) return (0);