aboutsummaryrefslogtreecommitdiff
path: root/gdb/f-lang.c
diff options
context:
space:
mode:
authorTom de Vries <tdevries@suse.de>2022-09-16 16:40:56 +0200
committerTom de Vries <tdevries@suse.de>2022-09-16 16:40:56 +0200
commitff84aaf3e338702f982274ffb79e93562d05070c (patch)
tree327a5e0db49733193928f6b395fde12dc0c25c70 /gdb/f-lang.c
parent77e6e213e0c8e77c53d123244ac75d6a825bda86 (diff)
downloadbinutils-ff84aaf3e338702f982274ffb79e93562d05070c.zip
binutils-ff84aaf3e338702f982274ffb79e93562d05070c.tar.gz
binutils-ff84aaf3e338702f982274ffb79e93562d05070c.tar.bz2
[gdb/tdep] Fix PowerPC IEEE 128-bit format arg passing
On a powerpc system with gcc 12 built to default to 128-bit IEEE long double, I run into: ... (gdb) print find_max_long_double_real(4, ldc1, ldc2, ldc3, ldc4)^M $8 = 0 + 0i^M (gdb) FAIL: gdb.base/varargs.exp: print \ find_max_long_double_real(4, ldc1, ldc2, ldc3, ldc4) ... This is due to incorrect handling of the argument in ppc64_sysv_abi_push_param. Fix this and similar cases, and expand the test-case to test handling of homogeneous aggregates. Tested on ppc64le-linux, power 10. Co-Authored-By: Ulrich Weigand <uweigand@de.ibm.com> Tested-by: Carl Love <cel@us.ibm.com> Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=29543
Diffstat (limited to 'gdb/f-lang.c')
0 files changed, 0 insertions, 0 deletions