This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] .savev6 directive for ARM


On Tue, 2006-06-20 at 17:17, Mark Shinwell wrote:
> The FLDMX/FSTMX VFP multiple load/store instructions are deprecated as
> of ARMv6 in favour of FLDMD and FSTMD.  The unwind opcodes corresponding
> to FSTMD are different from those corresponding to FSTMX.
> 
> This patch provides a new gas directive .savev6 that can be used to
> generate unwind information corresponding to the saving of VFP registers
> with FSTMD.  It also works with VFPv3 registers saved with VSTM.
> Assembly source using .save will still use the FSTMX-style unwind
> opcodes; thus, backwards compatibility is maintained.
> 
> I've also corrected a typo in the example of .save in the manual, see
> below.
> 
> Up my sleeve I have a gcc patch to go along with this that causes the
> compiler to emit .savev6 directives and to no longer emit FLDMX and
> FSTMX instructions -- along with the necessary unwinder support and a few
> bugfixes in that area.  At the moment that requires this patch, so I'm
> posting here first.
> 
> Tested for arm-none-linux-gnueabi.
> 
> OK?
> 
> Mark
> 
> --
> 
> gas/ChangeLog:
> 
> 2006-06-20  Mark Shinwell  <shinwell@codesourcery.com>
> 
> 	* config/tc-arm.c (s_arm_unwind_save_vfp_armv6): New.  Parse
> 	a directive saving VFP registers for ARMv6 or later.
> 	(s_arm_unwind_save): Add parameter arch_v6 and call
> 	s_arm_unwind_save_vfp or s_arm_unwind_save_vfp_armv6 as
> 	appropriate.
> 	(md_pseudo_table): Add entry for new "savev6" directive.
> 	* doc/c-arm.texi: Correct error in example for "save"
> 	directive (fstmdf -> fstmdx).  Also document "savev6" directive.
> 

I can't say I like the idea of using 'v6' in a directive name.  How
about '.vsave' (vector-save)?

Other than that, this is OK.

R.



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]