<div dir="auto"><div dir="auto">Ah yes, a comment...</div><div dir="auto"><br></div><div dir="auto">Is there a seperator character that works?</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Nov 8, 2019, 5:43 AM Martin Storsjö <<a href="mailto:martin@martin.st">martin@martin.st</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Fri, 8 Nov 2019, Peter Smith via cfe-dev wrote:<br>
<br>
> Hello Joel,<br>
><br>
> The root cause is that the AArch64 target is using ';' as a comment<br>
> character, whereas in GNU as (and many other llvm MC backends), the<br>
> ';' is used as a statement separator. In your example only the text up<br>
> to ';' is being parsed.<br>
><br>
> Looking at AArch64MCAsmInfo.cpp<br>
> SeparatorString = "%%";<br>
> CommentString = ";";<br>
><br>
> I think that this is likely to have been derived from Darwin as I<br>
> can't get the "%%" to work as a statement separator for<br>
> aarch64-linux-gnu targets.<br>
<br>
I don't know about the separator string, but if you look in <br>
AArch64MCAsmInfoELF (and AArch64MCAsmInfoGNUCOFF), the comment string is <br>
set to "//" instead.<br>
<br>
I suggested changing this for the GNUCOFF (aka MinGW) target, as mingw-w64 <br>
contains a number of assembler files that uses this pattern of piling up a <br>
few directives on one line.<br>
<br>
As there's very little predecent for GNU style .s assembler for <br>
aarch64-windows-msvc targets (as the official tool from microsoft, <br>
armasm64, uses a totally different syntax), I'm guess it would be fine to <br>
change the comment string to "//" there as well, as there apparently is a <br>
demand for it?<br>
<br>
With a target that doesn't treat ";" as a comment char, your assembler <br>
example errors out due to issues with the section and type directives <br>
though, now that they actually are interpreted and not stripped out as <br>
comments.<br>
<br>
// Martin<br>
<br>
</blockquote></div>