2 /* { dg-xfail-if "ptxas crashes" { nvptx-*-* } { "-O1" } { "" } } */
4 extern void abort (void);
5 struct S
{ void *p
; unsigned int q
; };
6 struct T
{ char a
[64]; char b
[64]; } t
;
8 __attribute__((noinline
, noclone
)) int
9 foo (void *x
, struct S s
, void *y
, void *z
)
11 if (x
!= &t
.a
[2] || s
.p
!= &t
.b
[5] || s
.q
!= 27 || y
!= &t
.a
[17] || z
!= &t
.b
[17])
16 __attribute__((noinline
, noclone
)) int
17 bar (void *x
, void *y
, void *z
, struct S s
, int t
, struct T
*u
)
19 return foo (x
, s
, &u
->a
[t
], &u
->b
[t
]);
25 struct S s
= { &t
.b
[5], 27 };
26 if (bar (&t
.a
[2], (void *) 0, (void *) 0, s
, 17, &t
) != 29)