This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: [RFA] [ARM] Fix Neon Alignment Syntax acceptance
- From: Matthew Gretton-Dann <matthew dot gretton-dann at linaro dot org>
- To: Iniyan <Iniyan dot charles at gmail dot com>
- Cc: binutils at sources dot redhat dot com
- Date: Mon, 13 Aug 2012 13:41:44 +0100
- Subject: Re: [RFA] [ARM] Fix Neon Alignment Syntax acceptance
- References: <1277475312.12570.28.camel@e102319-lin.cambridge.arm.com> <loom.20120813T124342-873@post.gmane.org>
On 13 August 2012 11:46, Iniyan <Iniyan.charles@gmail.com> wrote:
> Matthew Gretton-Dann <matthew.gretton-dann <at> arm.com> writes:
>>
>> All,
>>
>> Please can someone review, and approve the attached patch?
>>
>> Most Neon load/store instructions accept an optional alignment
>> parameter. The current syntax accepted by gas requires a comma before
>> the alignment parameter. However, this is not what was originally
>> intended, and this patch corrects that. We still accept the current
>> syntax as well.
>>
>> This means that the following are now both valid:
>> VLD1.8 {d0}, [r1, :128]
>> VLD1.8 {d0}, [r1 :128]
>>
>> We disassemble to the second form.
>>
>> Proposed ChangeLogs:
>
>
> Hello
>
> I am getting this error with thr 4.7 compiler, is this a code issue or a
> compiler issue? I am able to compile teh same code with 4.5 gcc without issues.
>
>
> /tmp/cc6UDvhG.s: Assembler messages:
> /tmp/cc6UDvhG.s:817: Error: bad alignment -- `vld1.16 {d16},[fp:128]'
> /tmp/cc6UDvhG.s:850: Error: bad alignment -- `vld1.16 {d0},[r9:128]'
> /tmp/cc6UDvhG.s:864: Error: bad alignment -- `vld1.16 {d15},[r7:128]'
> /tmp/cc6UDvhG.s:870: Error: bad alignment -- `vld1.16 {d14},[r6:128]'
This looks to me like a compiler issue. Despite the example I gave in
the original patch vld1.16 {d14}, [r6 :128] is not valid [1].
VLD1 of multiple single elements can only take a 128-bit alignment
specifier when loading 2 or 4 d-registers.
Please raise a bug report at http://gcc.gnu.org/bugzilla including a
pre-processed test case.
Thanks,
Matt
[1] The patch referenced only changed whether you needed a comma
before the alignment specifier or not.
--
Matthew Gretton-Dann
Linaro Toolchain Working Group
matthew.gretton-dann@linaro.org