On Tue, Jun 6, 2017 at 3:56 AM, Renlin Li <renlin...@foss.arm.com> wrote:
> Hi all,
>
> In this patch, a new integer register operand modifier 'r' is added. This
> will use the
> proper register name according to the mode of corresponding operand.
>
> 'w' register for scalar integer mode smaller than DImode
> 'x' register for DImode
>
> This allows more flexibility and would meet people's expectations.
> It will help for ILP32 and LP64, and big-endian case.
>
> A new section is added to document the AArch64 operand modifiers which might
> be used in inline assembly. It's not an exhaustive list covers every
> modifier.
> Only the most common and useful ones are documented.
>
> The default behavior of integer operand without modifier is clearly
> documented
> as well. It's not changed so that the patch shouldn't break anything.
>
> So with this patch, it should resolve the issues in PR63359.
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63359
>
>
> aarch64-none-elf regression test Okay. Okay to check in?

I think 'r' modifier is very fragile and can be used incorrectly and
wrong in some cases really..
I like the documentation though.

Thanks,
Andrew

>
> gcc/ChangeLog:
>
> 2017-06-06  Renlin Li  <renlin...@arm.com>
>
>         PR target/63359
>         * config/aarch64/aarch64.c (aarch64_print_operand): Add 'r'
> modifier.
>         * doc/extend.texi (AArch64Operandmodifiers): New section.

Reply via email to