[llvm-commits] [PATCH] VST1.32 with writeback incorrectly encoded
Jim Grosbach
grosbach at apple.com
Tue Mar 27 09:22:42 PDT 2012
Hi Richard,
Instead of creating a new class, VST1LN32WB, I suggest parameterizing the type of $Rn and just passing it in when the defs are instantiated. You can see examples on the various classes that accept an "Operand" type operand.
-Jim
On Mar 27, 2012, at 5:55 AM, Richard Barton <richard.barton at arm.com> wrote:
> Hello
>
> The following is the instruction being encoded incorrectly by clang
> -integrated-as
>
> vst1.32 {d27[1]}, [r9, :32]!
>
> GNU assembler encodes this as
>
> f4c9b8bd vst1.32 {d27[1]}, [r9 :32]!
>
> LLVM encodes this as (llvm-mc output)
>
> vst1.32 {d27[1]}, [r9, :32]! @ encoding: [0x9d,0xb8,0xc9,0xf4]
>
> Notice that the last byte encoding is wrong; it should be 0xbd instead of 0x9d
>
> The problem is that there is a special tablegen class for VST1.32 which does not
> have a writeback version. This is a simple patch to add this class, with a
> regression test for this instruction encoding.
>
> Please review
>
> Regards,
> Richard Barton<vst1.32.patch>
More information about the llvm-commits
mailing list