diff options
author | Andrew Burgess <andrew.burgess@embecosm.com> | 2019-04-07 22:48:00 +0100 |
---|---|---|
committer | Andrew Burgess <andrew.burgess@embecosm.com> | 2019-04-23 22:02:59 +0100 |
commit | b907456c3eb8a08f6b211f66abb448df962749e1 (patch) | |
tree | 3f0051221a92673b3a9b8e99299884923dfcf136 /gdb/m32c-tdep.c | |
parent | 9e97ba436a8e59ac4574001d618240eac0328934 (diff) | |
download | gdb-b907456c3eb8a08f6b211f66abb448df962749e1.zip gdb-b907456c3eb8a08f6b211f66abb448df962749e1.tar.gz gdb-b907456c3eb8a08f6b211f66abb448df962749e1.tar.bz2 |
gdb/aarch64: Use type_align instead of aarch64_type_align
Replaces use of aarch64_type_align with common type_align function.
Doing this fixes a bug in aarch64_type_align where static fields are
considered as part of the alignment calculation of a struct, which
results in arguments passed on the stack being misaligned. This bug
is exposed in the new test gdb.cp/many-args.exp.
Part of the old aarch64_type_align is retained and used as the gdbarch
type align callback in order to correctly align vectors.
gdb/ChangeLog:
* aarch64-tdep.c (aarch64_type_align): Only handle vector override
case.
(pass_on_stack): Use type_align.
(aarch64_gdbarch_init): Register aarch64_type_align gdbarch
function.
gdb/testsuite/ChangeLog:
* gdb.cp/many-args.cc: New file.
* gdb.cp/many-args.exp: New file.
Diffstat (limited to 'gdb/m32c-tdep.c')
0 files changed, 0 insertions, 0 deletions