Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Joel Brobecker <brobecker@adacore.com>
To: Thomas Preud'homme <thomas.preudhomme@arm.com>
Cc: gdb-patches@sourceware.org
Subject: Re: [PATCH, ARM] Support for value 3 of Tag_ABI_VFP_args ARM attribute
Date: Sun, 28 Dec 2014 03:47:00 -0000	[thread overview]
Message-ID: <20141228034726.GA2123@adacore.com> (raw)
In-Reply-To: <000101d02201$e9b4b430$bd1e1c90$@arm.com>

> By mistake a small gdb patch was commited while commiting the binutils
> patch to support value 3 of Tag_ABI_VFP_args ARM attribute because I
> forgot to split the patch into two parts. My sincere apologize, this
> is my first binutils-gdb patch and the combined repository but double
> submission confused me. The patch is very straightforward so I hope
> it's not a problem but if it is I'll promptly revert it of course. The
> following gdb change was commited:

No problem.

You forgot to provide the ChangeLog entry.  FTR, here it is:

2014-12-25  Thomas Preud'homme  <thomas.preudhomme@arm.com>

        * arm-tdep.c (arm_gdbarch_init): Explicitly handle value 3 of
        Tag_ABI_VFP_args. Also replace hardcoded values by enum values in the
        switch handling the different values of Tag_ABI_VFP_args.

Also, I don't think the cast to (int) are necessary, are they?

> 
> diff --git a/gdb/arm-tdep.c b/gdb/arm-tdep.c
> index 43520cc..a917862 100644
> --- a/gdb/arm-tdep.c
> +++ b/gdb/arm-tdep.c
> @@ -10007,27 +10007,34 @@ arm_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
>  							OBJ_ATTR_PROC,
>  							Tag_ABI_VFP_args))
>  			{
> -			case 0:
> +			case (int) AEABI_VFP_args_base:
>  			  /* "The user intended FP parameter/result
>  			     passing to conform to AAPCS, base
>  			     variant".  */
>  			  fp_model = ARM_FLOAT_SOFT_VFP;
>  			  break;
> -			case 1:
> +			case (int) AEABI_VFP_args_vfp:
>  			  /* "The user intended FP parameter/result
>  			     passing to conform to AAPCS, VFP
>  			     variant".  */
>  			  fp_model = ARM_FLOAT_VFP;
>  			  break;
> -			case 2:
> +			case (int) AEABI_VFP_args_toolchain:
>  			  /* "The user intended FP parameter/result
>  			     passing to conform to tool chain-specific
>  			     conventions" - we don't know any such
>  			     conventions, so leave it as "auto".  */
>  			  break;
> +			case (int) AEABI_VFP_args_compatible:
> +			  /* "Code is compatible with both the base
> +			     and VFP variants; the user did not permit
> +			     non-variadic functions to pass FP
> +			     parameters/results" - leave it as
> +			     "auto".  */
> +			  break;
>  			default:
>  			  /* Attribute value not mentioned in the
> -			     October 2008 ABI, so leave it as
> +			     November 2012 ABI, so leave it as
>  			     "auto".  */
>  			  break;
>  			}
> 
> The definition was added in include/elf/arm.h in the same commit as follows:
> 
> diff --git a/include/elf/arm.h b/include/elf/arm.h
> index 34afdfd..e85536b 100644
> --- a/include/elf/arm.h
> +++ b/include/elf/arm.h
> @@ -319,6 +319,23 @@ enum
>    Tag_VFP_HP_extension = Tag_FP_HP_extension
>  };
>  
> +/* Values for Tag_ABI_FP_number_model.  */
> +enum
> +{
> +  AEABI_FP_number_model_none = 0,
> +  AEABI_FP_number_model_ieee754_number = 1,
> +  AEABI_FP_number_model_rtabi = 2,
> +  AEABI_FP_number_model_ieee754_all = 3
> +};
> +
> +/* Values for Tag_ABI_VFP_args.  */
> +enum
> +{
> +  AEABI_VFP_args_base = 0,
> +  AEABI_VFP_args_vfp = 1,
> +  AEABI_VFP_args_toolchain = 2,
> +  AEABI_VFP_args_compatible = 3
> +};
>  #endif
>  
>  /* The name of the note section used to identify arm variants.  */
> 
> Please let me know if I should revert the patch and sorry again for the trouble.
> 
> Best regards,
> 
> Thomas
> 
> 

-- 
Joel


  reply	other threads:[~2014-12-28  3:47 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-12-27 18:21 Thomas Preud'homme
2014-12-28  3:47 ` Joel Brobecker [this message]
2014-12-29 10:14   ` Thomas Preud'homme
2014-12-29 12:09     ` Joel Brobecker
2014-12-29 15:03       ` Thomas Preud'homme

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20141228034726.GA2123@adacore.com \
    --to=brobecker@adacore.com \
    --cc=gdb-patches@sourceware.org \
    --cc=thomas.preudhomme@arm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox