From: Christophe Lyon Date: Tue, 22 Nov 2022 08:33:06 +0000 (+0000) Subject: aarch64: Fix test_dfp_17.c for big-endian [PR 107604] X-Git-Tag: basepoints/gcc-14~2972 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4eb3a48698b2ca43967a4e7e7cfc0408192e85b2;p=thirdparty%2Fgcc.git aarch64: Fix test_dfp_17.c for big-endian [PR 107604] gcc.target/aarch64/aapcs64/test_dfp_17.c has been failing on big-endian, because the _Decimal32 on-stack argument is not padded in the same direction depending on endianness. This patch fixes the testcase so that it expects the argument in the right stack location, similarly to what other tests do in the same directory. gcc/testsuite/ChangeLog: PR target/107604 * gcc.target/aarch64/aapcs64/test_dfp_17.c: Fix for big-endian. --- diff --git a/gcc/testsuite/gcc.target/aarch64/aapcs64/test_dfp_17.c b/gcc/testsuite/gcc.target/aarch64/aapcs64/test_dfp_17.c index 22dc462bf7cb..3c45f715cf72 100644 --- a/gcc/testsuite/gcc.target/aarch64/aapcs64/test_dfp_17.c +++ b/gcc/testsuite/gcc.target/aarch64/aapcs64/test_dfp_17.c @@ -32,6 +32,10 @@ struct z b = { 9.0dd, 10.0dd, 11.0dd, 12.0dd }; ANON(struct z, a, D1) ANON(struct z, b, STACK) ANON(int , 5, W0) +#ifndef __AAPCS64_BIG_ENDIAN__ ANON(_Decimal32, f1, STACK+32) /* Note: no promotion to _Decimal64. */ +#else + ANON(_Decimal32, f1, STACK+36) /* Note: no promotion to _Decimal64. */ +#endif LAST_ANON(_Decimal64, 0.5dd, STACK+40) #endif