aboutsummaryrefslogtreecommitdiff
path: root/libgfortran/generated/matmulavx128_c16.c
diff options
context:
space:
mode:
authorMichael Meissner <meissner@linux.ibm.com>2018-08-30 18:31:50 +0000
committerMichael Meissner <meissner@linux.ibm.com>2018-08-30 18:31:50 +0000
commitd0ed5596dfd55dbaf41f506784fafcda1d7ad63b (patch)
tree6fc657e62ff04d4cd7fce825a3b0644d0bffe981 /libgfortran/generated/matmulavx128_c16.c
parenta3df48ce98f6f37f452eda0b793bec281937782b (diff)
parentec0e5c27c42959e428d618a1172e5b602584ff9b (diff)
Merge up to 263992ibm/addr2
git-svn-id: https://gcc.gnu.org/svn/gcc/branches/ibm/addr2@263994 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libgfortran/generated/matmulavx128_c16.c')
-rw-r--r--libgfortran/generated/matmulavx128_c16.c18
1 files changed, 14 insertions, 4 deletions
diff --git a/libgfortran/generated/matmulavx128_c16.c b/libgfortran/generated/matmulavx128_c16.c
index 0bf8ba3f599..66272fefaf9 100644
--- a/libgfortran/generated/matmulavx128_c16.c
+++ b/libgfortran/generated/matmulavx128_c16.c
@@ -282,8 +282,13 @@ matmul_c16_avx128_fma3 (gfc_array_c16 * const restrict retarray,
return;
/* Adjust size of t1 to what is needed. */
- index_type t1_dim;
- t1_dim = (a_dim1 - (ycount > 1)) * 256 + b_dim1;
+ index_type t1_dim, a_sz;
+ if (aystride == 1)
+ a_sz = rystride;
+ else
+ a_sz = a_dim1;
+
+ t1_dim = a_sz * 256 + b_dim1;
if (t1_dim > 65536)
t1_dim = 65536;
@@ -835,8 +840,13 @@ matmul_c16_avx128_fma4 (gfc_array_c16 * const restrict retarray,
return;
/* Adjust size of t1 to what is needed. */
- index_type t1_dim;
- t1_dim = (a_dim1 - (ycount > 1)) * 256 + b_dim1;
+ index_type t1_dim, a_sz;
+ if (aystride == 1)
+ a_sz = rystride;
+ else
+ a_sz = a_dim1;
+
+ t1_dim = a_sz * 256 + b_dim1;
if (t1_dim > 65536)
t1_dim = 65536;