[RFA] ARM: VLDM/VSTM pc, {} is predictable in ARM state

Richard Earnshaw rearnsha@arm.com
Tue Jun 8 16:20:00 GMT 2010


On Tue, 2010-06-08 at 14:57 +0100, Matthew Gretton-Dann wrote:
> On Mon, 2010-06-07 at 22:25 +0100, Richard Earnshaw wrote:
> > On 07/06/10 17:24, Matthew Gretton-Dann wrote:
> > > All,
> > >
> > > Please can someone review and approve the attached patch?
> > >
> > > The patch is to fix gas so that it accepts vldm pc, {...}, vstm pc,
> > > {...}, and the divided syntax equivalents, in ARM state.
> > >
> > > (These instructions with writeback, or in Thumb-state are
> > > unpredictable).
> > 
> > This is basically OK, but I think your use of .double in the source will 
> > cause the dumps to fail if run in big-endian mode.  It might be better 
> > to just put out .word directives for the literals (their values aren't 
> > really what's under test).
> 
> Please find attached an updated patch which fixes the tests for big
> endian.  Tested arm-none-eabi big & little endian.
> 
> Thanks,
> 
> Matt
> 
> Proposed ChangeLogs:
> 
> gas/ChangeLog:
> 2010-06-08  Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>
>         * config/tc-arm.c (operand_parse_code): Add OP_RRnpctw enum 
>         value.
>         (parse_operands): Add support for OP_RRnpctw.
>         (insns): Update floating-point load/store multiples so the 
>         first register is of type OP_RRnpctw.
> 
> gas/testsuite/ChangeLog:
> 2010-06-08 Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>
>         * gas/arm/vldm-arm.d: New test.
>         * gas/arm/vldm-thumb-bad.d: Likewise.
>         * gas/arm/vldm-thumb-bad.l: Likewise.
>         * gas/arm/vldm.s: Likewise.
>         * gas/arm/vldmw-arm-bad.d: Likewise.
>         * gas/arm/vldmw-bad.l: Likewise.
>         * gad/arm-vldmw-bad.s: Likewise.
>         * gas/arm/vldmw-thumb-bad.d: Likewise.
> 


OK

R.



More information about the Binutils mailing list