aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristophe Lyon <christophe.lyon@arm.com>2022-11-22 08:33:06 +0000
committerChristophe Lyon <christophe.lyon@arm.com>2022-11-22 14:05:50 +0100
commit4eb3a48698b2ca43967a4e7e7cfc0408192e85b2 (patch)
tree68919231bc8a9c79aacc7735bc886055d1b6559e
parent61351ab96a4dfa0884c8b1a53342b97915fb5dd7 (diff)
downloadgcc-4eb3a48698b2ca43967a4e7e7cfc0408192e85b2.zip
gcc-4eb3a48698b2ca43967a4e7e7cfc0408192e85b2.tar.gz
gcc-4eb3a48698b2ca43967a4e7e7cfc0408192e85b2.tar.bz2
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.
-rw-r--r--gcc/testsuite/gcc.target/aarch64/aapcs64/test_dfp_17.c4
1 files changed, 4 insertions, 0 deletions
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 22dc462..3c45f71 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