From: Kewen Lin Date: Fri, 6 Nov 2020 13:45:06 +0000 (+0100) Subject: testsuite: fix malloc alignment in test X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=15bcd01a94c23f312ac03b5faea29f18ef8d2a07;p=gcc.git testsuite: fix malloc alignment in test gcc/testsuite/ChangeLog: PR gcov-profile/97461 * gcc.dg/tree-prof/pr97461.c: Return aligned memory. --- diff --git a/gcc/testsuite/gcc.dg/tree-prof/pr97461.c b/gcc/testsuite/gcc.dg/tree-prof/pr97461.c index 8d21a3ef421..213fac9af04 100644 --- a/gcc/testsuite/gcc.dg/tree-prof/pr97461.c +++ b/gcc/testsuite/gcc.dg/tree-prof/pr97461.c @@ -20,7 +20,13 @@ static const fun_t funs[2] = { f1, f2, }; static void * malloc_impl(size_t size) { void * r = &memory[memory_p]; - memory_p += size; + /* The malloc() and calloc() functions return a pointer to the allocated + * memory, which is suitably aligned for any built-in type. Use 16 + * bytes here as the basic alignment requirement for user-defined malloc + * and calloc. See PR97594 for the details. */ + #define ROUND_UP_FOR_16B_ALIGNMENT(x) ((x + 15) & (-16)) + + memory_p += ROUND_UP_FOR_16B_ALIGNMENT(size); // force TOPN profile funs[size % 2]();