RFC: AArch64/ARM64 canonical assembler syntax

James Molloy james at jamesmolloy.co.uk
Tue Apr 29 08:39:32 PDT 2014


Hi Tim,

I like my lawns mowed in a checkerboard pattern.

More concretely, my own biases go the same way as yours, pretty much.
2. I prefer UPPER_CASE for system registers personally, but I really do not
care.
3. Definately with lsl/msl. Less magic is better.

Cheers,

James


On 29 April 2014 16:21, Tim Northover <t.p.northover at gmail.com> wrote:

> Hi all,
>
> In case the paint on everyone's previous bike shed has thoroughly
> dried and they find themselves unaccountably without a lawn...
>
> There are a few areas where AArch64 and ARM64 have chosen different
> ways to print the same assembly (actually, even within a single
> backend it's happened), and I think it would be good to settle on one,
> preferably with as much self-consistency as we can muster.
>
> So, the main issues are:
>
> 1. Floating-point immediates: 1.2500000e-01 or 0.12500000?
> 2. System registers & kin: should they be UPPER_CASE or lower_case?
> 3. Complex immediates: do we stick to the ARM ARM or print convenience
> syntax: "add x0, x1, #123, lsl #12" or "add x0, x1, x2, #503808".
> 4. Integer immediates: hex or decimal
> 5. Hashes with relocated exprs or not: "ldr x0, [x1, #:lo12:symbol]"
> or "ldr x0, [x1, :lo12:symbol]".
>
> My opinions are:
> 1. 0.12500000 (I find scientific notation works intuitively in LaTeX,
> but not with the "e")
> 2. lower_case (everything else is, switching to upper-case just for
> those few operands looks weird).
> 3. Print it with the "lsl"/"msl"/etc (I prefer explicit notations).
> 4. Hex in almost all cases (certainly for logical insts, probably
> arithmetic, my one uncertainty is loads & stores: "ldr x0, [x1,
> #0x123]" looks odd somehow, but that could be me). The exception is
> probably immediates in the 0-31 or 0-63 range (e.g. I like "lsl x0,
> x1, #55")
> 5. I prefer with the hashes.
>
> What does everyone else think, before I run off and change everything?
>
> Cheers.
>
> Tim.
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140429/347c4b3c/attachment.html>


More information about the llvm-commits mailing list