1 /* Check calling convention in the vector ABI. */
3 /* { dg-do compile { target { s390*-*-* } } } */
4 /* { dg-options "-O3 -mzarch -march=z13" } */
6 /* Make sure the last argument is fetched from the argument overflow area. */
7 /* { dg-final { scan-assembler "vl\t%v\[0-9\]*,160\\(%r15\\)" { target lp64 } } } */
8 /* { dg-final { scan-assembler "vl\t%v\[0-9\]*,96\\(%r15\\)" { target ilp32 } } } */
10 typedef double v2df
__attribute__((vector_size(16)));
13 add (v2df a
, v2df b
, v2df c
, v2df d
,
14 v2df e
, v2df f
, v2df g
, v2df h
, v2df i
)
16 return a
+ b
+ c
+ d
+ e
+ f
+ g
+ h
+ i
;