From a16b8bcdf9ea8a6b5d7653d0a3e9a356c91b2c6a Mon Sep 17 00:00:00 2001 From: Ulrich Weigand Date: Thu, 31 Jan 2008 15:43:32 +0000 Subject: [PATCH] 2008-01-31 Andreas Krebbel * s390-tdep.c (is_float_singleton, is_float_like, alignment_of, s390_return_value): Make checks for TYPE_CODE_FLT to match TYPE_CODE_DECFLOAT as well. --- gdb/ChangeLog | 6 ++++++ gdb/s390-tdep.c | 11 ++++++++--- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index bdfef7fe52a..e4f36b5585e 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,9 @@ +2008-01-31 Andreas Krebbel + + * s390-tdep.c (is_float_singleton, is_float_like, + alignment_of, s390_return_value): Make checks for + TYPE_CODE_FLT to match TYPE_CODE_DECFLOAT as well. + 2008-01-31 Luis Machado Thiago Jung Bauermann diff --git a/gdb/s390-tdep.c b/gdb/s390-tdep.c index f25a371eb41..9cb639b147d 100644 --- a/gdb/s390-tdep.c +++ b/gdb/s390-tdep.c @@ -1816,6 +1816,7 @@ is_float_singleton (struct type *type) CHECK_TYPEDEF (singleton_type); return (TYPE_CODE (singleton_type) == TYPE_CODE_FLT + || TYPE_CODE (singleton_type) == TYPE_CODE_DECFLOAT || is_float_singleton (singleton_type)); } @@ -1854,6 +1855,7 @@ static int is_float_like (struct type *type) { return (TYPE_CODE (type) == TYPE_CODE_FLT + || TYPE_CODE (type) == TYPE_CODE_DECFLOAT || is_float_singleton (type)); } @@ -1930,7 +1932,8 @@ alignment_of (struct type *type) if (is_integer_like (type) || is_pointer_like (type) - || TYPE_CODE (type) == TYPE_CODE_FLT) + || TYPE_CODE (type) == TYPE_CODE_FLT + || TYPE_CODE (type) == TYPE_CODE_DECFLOAT) alignment = TYPE_LENGTH (type); else if (TYPE_CODE (type) == TYPE_CODE_STRUCT || TYPE_CODE (type) == TYPE_CODE_UNION) @@ -2185,7 +2188,8 @@ s390_return_value (struct gdbarch *gdbarch, struct type *type, switch (rvc) { case RETURN_VALUE_REGISTER_CONVENTION: - if (TYPE_CODE (type) == TYPE_CODE_FLT) + if (TYPE_CODE (type) == TYPE_CODE_FLT + || TYPE_CODE (type) == TYPE_CODE_DECFLOAT) { /* When we store a single-precision value in an FP register, it occupies the leftmost bits. */ @@ -2221,7 +2225,8 @@ s390_return_value (struct gdbarch *gdbarch, struct type *type, switch (rvc) { case RETURN_VALUE_REGISTER_CONVENTION: - if (TYPE_CODE (type) == TYPE_CODE_FLT) + if (TYPE_CODE (type) == TYPE_CODE_FLT + || TYPE_CODE (type) == TYPE_CODE_DECFLOAT) { /* When we store a single-precision value in an FP register, it occupies the leftmost bits. */ -- 2.30.2