2 /* { dg-do compile } */
3 /* { dg-additional-options "-g -ffast-math -funroll-loops" } */
6 foo (double (*__restrict p
)[4], double (*__restrict q
)[4],
7 double *__restrict prim
, double scale
, double pp
, double pq
)
9 int md
, mc
, mb
, ma
, p_index
= 0;
11 for (md
= 0; md
< 1; md
++)
12 for (mc
= 0; mc
< 1; mc
++)
13 for (mb
= 0; mb
< 1; mb
++)
14 for (ma
= 0; ma
< 4; ma
++)
16 double tmp
= scale
* prim
[p_index
++];
17 p
[md
][ma
] = p
[md
][ma
] - tmp
* pp
;
18 q
[mc
][ma
] = q
[mc
][ma
] - tmp
* pq
;