diff options
Diffstat (limited to 'gdb/aarch64-tdep.c')
-rw-r--r-- | gdb/aarch64-tdep.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/gdb/aarch64-tdep.c b/gdb/aarch64-tdep.c index b051563..7c5d748 100644 --- a/gdb/aarch64-tdep.c +++ b/gdb/aarch64-tdep.c @@ -1232,6 +1232,14 @@ aapcs_is_vfp_call_or_return_candidate_1 (struct type *type, return -1; count += sub_count; } + + /* Ensure there is no padding between the fields (allowing for empty + zero length structs) */ + int ftype_length = (*fundamental_type == nullptr) + ? 0 : TYPE_LENGTH (*fundamental_type); + if (count * ftype_length != TYPE_LENGTH (type)) + return -1; + return count; } |