/* Test AAPCS64 layout. C.8 If the argument has an alignment of 16 then the NGRN is rounded up the next even number. The case of a small struture containing only one 16-byte aligned quad-word integer is covered in this test. */ /* { dg-do run { target aarch64*-*-* } } */ #ifndef IN_FRAMEWORK #define TESTFILE "test_align-2.c" #include "type-def.h" struct y { union int128_t v; } w; struct x { long long p; int q; } s = {0xDEADBEEFCAFEBABELL, 0xFEEBDAED}; #define HAS_DATA_INIT_FUNC void init_data () { /* Init signed quad-word integer. */ w.v.l64 = 0xfdb9753102468aceLL; w.v.h64 = 0xeca8642013579bdfLL; } #include "abitest.h" #else ARG(int, 0xAB, W0) ARG(struct y, w, X2) ARG(int, 0xCD, W4) ARG(struct x, s, X5) LAST_ARG(int, 0xFF00FF00, W7) #endif