From 8a98812c685222768f27f9abb7255352d94eb9ab Mon Sep 17 00:00:00 2001 From: Eric Botcazou Date: Thu, 22 Jan 2004 12:15:37 +0100 Subject: [PATCH] sparc.c (function_arg_slotno): Use FLOAT_TYPE_P to detect FP fields in structures. * config/sparc/sparc.c (function_arg_slotno): Use FLOAT_TYPE_P to detect FP fields in structures. (function_arg_record_value_1): Likewise. (function_arg_record_value_2): Likewise. From-SVN: r76346 --- gcc/ChangeLog | 7 +++++++ gcc/config/sparc/sparc.c | 25 +++++++++---------------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 1bdeb2ef39f..89136b310b5 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2004-01-22 Eric Botcazou + + * config/sparc/sparc.c (function_arg_slotno): Use + FLOAT_TYPE_P to detect FP fields in structures. + (function_arg_record_value_1): Likewise. + (function_arg_record_value_2): Likewise. + 2004-01-22 Jan Hubicka * function.c (allocate_struct_function): Do not initialize expr, emit diff --git a/gcc/config/sparc/sparc.c b/gcc/config/sparc/sparc.c index 8805bbeb4dc..9fd63cdbabb 100644 --- a/gcc/config/sparc/sparc.c +++ b/gcc/config/sparc/sparc.c @@ -4928,8 +4928,7 @@ function_arg_slotno (const struct sparc_args *cum, enum machine_mode mode, { if (TREE_CODE (field) == FIELD_DECL) { - if (TREE_CODE (TREE_TYPE (field)) == REAL_TYPE - && TARGET_FPU) + if (FLOAT_TYPE_P (TREE_TYPE (field)) && TARGET_FPU) fpregs_p = 1; else intregs_p = 1; @@ -5029,13 +5028,10 @@ function_arg_record_value_1 (tree type, HOST_WIDE_INT startbitpos, bitpos, parms, packed_p); - else if ((TREE_CODE (TREE_TYPE (field)) == REAL_TYPE - || (TREE_CODE (TREE_TYPE (field)) == COMPLEX_TYPE - && (TREE_CODE (TREE_TYPE (TREE_TYPE (field))) - == REAL_TYPE))) - && TARGET_FPU - && ! packed_p - && parms->named) + else if (FLOAT_TYPE_P (TREE_TYPE (field)) + && TARGET_FPU + && parms->named + && ! packed_p) { if (parms->intoffset != -1) { @@ -5170,13 +5166,10 @@ function_arg_record_value_2 (tree type, HOST_WIDE_INT startbitpos, bitpos, parms, packed_p); - else if ((TREE_CODE (TREE_TYPE (field)) == REAL_TYPE - || (TREE_CODE (TREE_TYPE (field)) == COMPLEX_TYPE - && (TREE_CODE (TREE_TYPE (TREE_TYPE (field))) - == REAL_TYPE))) - && TARGET_FPU - && ! packed_p - && parms->named) + else if (FLOAT_TYPE_P (TREE_TYPE (field)) + && TARGET_FPU + && parms->named + && ! packed_p) { int this_slotno = parms->slotno + bitpos / BITS_PER_WORD; int regno; -- 2.30.2