Skip to content

Commit faf7ddb

Browse files
committed
Fix AIX build with OpenXL (ibm-clang)
1 parent 94f85eb commit faf7ddb

6 files changed

Lines changed: 95 additions & 95 deletions

kernel/power/dgemm_kernel_power10.c

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -94,8 +94,8 @@ typedef FLOAT v4sf_t __attribute__ ((vector_size (16)));
9494
#endif
9595
#define KERNEL(i) \
9696
rowA = (vec_t *)&AO[(i)<< 3];\
97-
rowB = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&BO[(i) << 3])); \
98-
rowB1 = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&BO[((i) << 3) + 4])); \
97+
rowB = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&BO[(i) << 3])); \
98+
rowB1 = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&BO[((i) << 3) + 4])); \
9999
__builtin_mma_xvf64gerpp(&acc0, rowB, rowA[0]);\
100100
__builtin_mma_xvf64gerpp(&acc1, rowB1, rowA[0]);\
101101
__builtin_mma_xvf64gerpp(&acc2, rowB, rowA[1]);\
@@ -200,8 +200,8 @@ CNAME (BLASLONG m, BLASLONG n, BLASLONG k, FLOAT alpha, FLOAT * A, FLOAT * B,
200200
BLASLONG l = 1;
201201
vec_t *rowA = (vec_t *) & AO[0];
202202
__vector_pair rowB, rowB1;
203-
rowB = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&BO[0]));
204-
rowB1 = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&BO[4]));
203+
rowB = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&BO[0]));
204+
rowB1 = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&BO[4]));
205205
__builtin_mma_xvf64ger (&acc0, rowB, rowA[0]);
206206
__builtin_mma_xvf64ger (&acc1, rowB1, rowA[0]);
207207
__builtin_mma_xvf64ger (&acc2, rowB, rowA[1]);
@@ -283,16 +283,16 @@ CNAME (BLASLONG m, BLASLONG n, BLASLONG k, FLOAT alpha, FLOAT * A, FLOAT * B,
283283
BLASLONG l = 0;
284284
vec_t *rowA = (vec_t *) & AO[0];
285285
__vector_pair rowB, rowB1;
286-
rowB = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&BO[0]));
287-
rowB1 = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&BO[4]));
286+
rowB = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&BO[0]));
287+
rowB1 = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&BO[4]));
288288
__builtin_mma_xvf64ger (&acc0, rowB, rowA[0]);
289289
__builtin_mma_xvf64ger (&acc1, rowB1, rowA[0]);
290290
__builtin_mma_xvf64ger (&acc2, rowB, rowA[1]);
291291
__builtin_mma_xvf64ger (&acc3, rowB1, rowA[1]);
292292
for (l = 1; l < temp; l++) {
293293
rowA = (vec_t *) & AO[l << 2];
294-
rowB = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&BO[l << 3]));
295-
rowB1 = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&BO[(l << 3) + 4]));
294+
rowB = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&BO[l << 3]));
295+
rowB1 = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&BO[(l << 3) + 4]));
296296
__builtin_mma_xvf64gerpp (&acc0, rowB, rowA[0]);
297297
__builtin_mma_xvf64gerpp (&acc1, rowB1, rowA[0]);
298298
__builtin_mma_xvf64gerpp (&acc2, rowB, rowA[1]);
@@ -323,14 +323,14 @@ CNAME (BLASLONG m, BLASLONG n, BLASLONG k, FLOAT alpha, FLOAT * A, FLOAT * B,
323323
BLASLONG l = 0;
324324
vec_t *rowA = (vec_t *) & AO[0];
325325
__vector_pair rowB, rowB1;
326-
rowB = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&BO[0]));
327-
rowB1 = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&BO[4]));
326+
rowB = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&BO[0]));
327+
rowB1 = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&BO[4]));
328328
__builtin_mma_xvf64ger (&acc0, rowB, rowA[0]);
329329
__builtin_mma_xvf64ger (&acc1, rowB1, rowA[0]);
330330
for (l = 1; l < temp; l++) {
331331
rowA = (vec_t *) & AO[l << 1];
332-
rowB = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&BO[l << 3]));
333-
rowB1 = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&BO[(l << 3) + 4]));
332+
rowB = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&BO[l << 3]));
333+
rowB1 = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&BO[(l << 3) + 4]));
334334
__builtin_mma_xvf64gerpp (&acc0, rowB, rowA[0]);
335335
__builtin_mma_xvf64gerpp (&acc1, rowB1, rowA[0]);
336336
}
@@ -428,14 +428,14 @@ CNAME (BLASLONG m, BLASLONG n, BLASLONG k, FLOAT alpha, FLOAT * A, FLOAT * B,
428428
BLASLONG l = 0;
429429
vec_t *rowA = (vec_t *) & AO[0];
430430
__vector_pair rowB;
431-
rowB = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&BO[0]));
431+
rowB = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&BO[0]));
432432
__builtin_mma_xvf64ger (&acc0, rowB, rowA[0]);
433433
__builtin_mma_xvf64ger (&acc1, rowB, rowA[1]);
434434
__builtin_mma_xvf64ger (&acc2, rowB, rowA[2]);
435435
__builtin_mma_xvf64ger (&acc3, rowB, rowA[3]);
436436
for (l = 1; l < temp; l++) {
437437
rowA = (vec_t *) & AO[l << 3];
438-
rowB = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&BO[l << 2]));
438+
rowB = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&BO[l << 2]));
439439
__builtin_mma_xvf64gerpp (&acc0, rowB, rowA[0]);
440440
__builtin_mma_xvf64gerpp (&acc1, rowB, rowA[1]);
441441
__builtin_mma_xvf64gerpp (&acc2, rowB, rowA[2]);
@@ -466,12 +466,12 @@ CNAME (BLASLONG m, BLASLONG n, BLASLONG k, FLOAT alpha, FLOAT * A, FLOAT * B,
466466
BLASLONG l = 0;
467467
vec_t *rowA = (vec_t *) & AO[0];
468468
__vector_pair rowB;
469-
rowB = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&BO[0]));
469+
rowB = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&BO[0]));
470470
__builtin_mma_xvf64ger (&acc0, rowB, rowA[0]);
471471
__builtin_mma_xvf64ger (&acc1, rowB, rowA[1]);
472472
for (l = 1; l < temp; l++) {
473473
rowA = (vec_t *) & AO[l << 2];
474-
rowB = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&BO[l << 2]));
474+
rowB = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&BO[l << 2]));
475475
__builtin_mma_xvf64gerpp (&acc0, rowB, rowA[0]);
476476
__builtin_mma_xvf64gerpp (&acc1, rowB, rowA[1]);
477477
}
@@ -498,11 +498,11 @@ CNAME (BLASLONG m, BLASLONG n, BLASLONG k, FLOAT alpha, FLOAT * A, FLOAT * B,
498498
BLASLONG l = 0;
499499
vec_t *rowA = (vec_t *) & AO[0];
500500
__vector_pair rowB;
501-
rowB = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&BO[0]));
501+
rowB = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&BO[0]));
502502
__builtin_mma_xvf64ger (&acc0, rowB, rowA[0]);
503503
for (l = 1; l < temp; l++) {
504504
rowA = (vec_t *) & AO[l << 1];
505-
rowB = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&BO[l << 2]));
505+
rowB = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&BO[l << 2]));
506506
__builtin_mma_xvf64gerpp (&acc0, rowB, rowA[0]);
507507
}
508508
SAVE_ACC (&acc0, 0);

kernel/power/dgemm_small_kernel_nn_power10.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -314,8 +314,8 @@ typedef __vector unsigned char vec_t;
314314
*((__vector_pair *)(void *)(packB+(k*8)+4+offset)) = pb1;
315315

316316
#define LOAD_PACKED_B(pb0, pb1, offset) \
317-
pb0 = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)(packB+(k*8)+0+offset))); \
318-
pb1 = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)(packB+(k*8)+4+offset)));
317+
pb0 = __builtin_vsx_lxvp(0L, (const __vector_pair *)((packB+(k*8)+0+offset))); \
318+
pb1 = __builtin_vsx_lxvp(0L, (const __vector_pair *)((packB+(k*8)+4+offset)));
319319

320320
#ifdef B0
321321
int CNAME(BLASLONG M, BLASLONG N, BLASLONG K, IFLOAT * A, BLASLONG lda, FLOAT alpha, IFLOAT * B, BLASLONG ldb, FLOAT * C, BLASLONG ldc)

kernel/power/dgemm_small_kernel_nt_power10.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -144,11 +144,11 @@ typedef __vector unsigned char vec_t;
144144
#define LOAD_A_1x1(K, M) ra0 = vec_splats(A[K*lda+M]);
145145

146146
#define LOAD_BP_1x8(K, N) \
147-
pb0 = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&B[((K)*ldb)+N+0])); \
148-
pb1 = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&B[((K)*ldb)+N+4]));
147+
pb0 = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&B[((K)*ldb)+N+0])); \
148+
pb1 = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&B[((K)*ldb)+N+4]));
149149

150150
#define LOAD_BP_1x4(K, N) \
151-
pb0 = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&B[((K)*ldb)+N+0]));
151+
pb0 = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&B[((K)*ldb)+N+0]));
152152

153153
#define LOAD_BP_1x2(K, N) \
154154
t0 = vec_xl(0, B+(K*ldb)+N); \

kernel/power/dgemm_small_kernel_tt_power10.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -207,11 +207,11 @@ typedef __vector unsigned char vec_t;
207207
#define LOAD_A_1x1(M, K) ra0 = vec_splats(A[(M)*lda+K]);
208208

209209
#define LOAD_BP_1x8(K, N) \
210-
pb0 = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&B[((K)*ldb)+N+0])); \
211-
pb1 = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&B[((K)*ldb)+N+4]));
210+
pb0 = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&B[((K)*ldb)+N+0])); \
211+
pb1 = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&B[((K)*ldb)+N+4]));
212212

213213
#define LOAD_BP_1x4(K, N) \
214-
pb0 = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&B[((K)*ldb)+N+0]));
214+
pb0 = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&B[((K)*ldb)+N+0]));
215215

216216
#define LOAD_BP_1x2(K, N) \
217217
t0 = vec_xl(0, B+((K)*ldb)+N); \

kernel/power/dgemv_t_power10.c

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -61,37 +61,37 @@ static void dgemv_kernel_4x8(BLASLONG n, BLASLONG lda, FLOAT *ap, FLOAT *x, FLOA
6161
a6 = a5 + lda;
6262
a7 = a6 + lda;
6363
for (i = 0; i < n/2; i += 2) {
64-
vp = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&a0[i*2]));
65-
vx = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&x[i*2]));
64+
vp = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&a0[i*2]));
65+
vx = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&x[i*2]));
6666
__builtin_vsx_disassemble_pair (res, &vx);
6767
__builtin_vsx_disassemble_pair (res1, &vp);
6868
temp0 = vec_madd ((__vector double)res[0], (__vector double)res1[0], temp0);
6969
temp0 = vec_madd ((__vector double)res[1], (__vector double)res1[1], temp0);
70-
vp = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&a1[i*2]));
70+
vp = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&a1[i*2]));
7171
__builtin_vsx_disassemble_pair (res1, &vp);
7272
temp1 = vec_madd ((__vector double)res[0], (__vector double)res1[0], temp1);
7373
temp1 = vec_madd ((__vector double)res[1], (__vector double)res1[1], temp1);
74-
vp = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&a2[i*2]));
74+
vp = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&a2[i*2]));
7575
__builtin_vsx_disassemble_pair (res1, &vp);
7676
temp2 = vec_madd ((__vector double)res[0], (__vector double)res1[0], temp2);
7777
temp2 = vec_madd ((__vector double)res[1], (__vector double)res1[1], temp2);
78-
vp = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&a3[i*2]));
78+
vp = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&a3[i*2]));
7979
__builtin_vsx_disassemble_pair (res1, &vp);
8080
temp3 = vec_madd ((__vector double)res[0], (__vector double)res1[0], temp3);
8181
temp3 = vec_madd ((__vector double)res[1], (__vector double)res1[1], temp3);
82-
vp = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&a4[i*2]));
82+
vp = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&a4[i*2]));
8383
__builtin_vsx_disassemble_pair (res1, &vp);
8484
temp4 = vec_madd ((__vector double)res[0], (__vector double)res1[0], temp4);
8585
temp4 = vec_madd ((__vector double)res[1], (__vector double)res1[1], temp4);
86-
vp = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&a5[i*2]));
86+
vp = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&a5[i*2]));
8787
__builtin_vsx_disassemble_pair (res1, &vp);
8888
temp5 = vec_madd ((__vector double)res[0], (__vector double)res1[0], temp5);
8989
temp5 = vec_madd ((__vector double)res[1], (__vector double)res1[1], temp5);
90-
vp = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&a6[i*2]));
90+
vp = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&a6[i*2]));
9191
__builtin_vsx_disassemble_pair (res1, &vp);
9292
temp6 = vec_madd ((__vector double)res[0], (__vector double)res1[0], temp6);
9393
temp6 = vec_madd ((__vector double)res[1], (__vector double)res1[1], temp6);
94-
vp = __builtin_vsx_lxvp(0, (__vector_pair *)((void *)&a7[i*2]));
94+
vp = __builtin_vsx_lxvp(0L, (const __vector_pair *)(&a7[i*2]));
9595
__builtin_vsx_disassemble_pair (res1, &vp);
9696
temp7 = vec_madd ((__vector double)res[0], (__vector double)res1[0], temp7);
9797
temp7 = vec_madd ((__vector double)res[1], (__vector double)res1[1], temp7);

0 commit comments

Comments
 (0)