[llvm] r196607 - Integrated assembler incorrectly lexes ARM-style comments

David Peixotto dpeixott at codeaurora.org
Fri Jan 10 15:14:56 PST 2014


> -----Original Message-----
> From: Jim Grosbach [mailto:grosbach at apple.com]
> Sent: Friday, January 10, 2014 1:40 PM
> To: Joerg Sonnenberger; David Peixotto
> Cc: llvm-commits
> Subject: Re: [llvm] r196607 - Integrated assembler incorrectly lexes ARM-
> style comments
> 
> On Jan 9, 2014, at 4:52 PM, Joerg Sonnenberger <joerg at britannica.bec.de>
> wrote:
> 
> > On Fri, Dec 06, 2013 at 08:35:58PM -0000, David Peixotto wrote:
> >> Author: dpeixott
> >> Date: Fri Dec  6 14:35:58 2013
> >> New Revision: 196607
> >>
> >> URL: http://llvm.org/viewvc/llvm-project?rev=196607&view=rev
> >> Log:
> >> Integrated assembler incorrectly lexes ARM-style comments
> >>
> >> The integrated assembler fails to properly lex arm comments when they
> >> are adjacent to an identifier in the input stream. The reason is that
> >> the arm comment symbol '@' is also used as symbol variant in other
> >> assembly languages so when lexing an identifier it allows the '@'
> >> symbol as part of the identifier.
> >
> > This has broken .symver for ELF targets on ARM. Do you plan to fix this?
> > Otherwise I'd ask for a revert.
> 
> Ugh. Yet another example of why I hate the comment character choice of '@'
> on ARM (no, I don't think we should/can change it; too much history).
> 
> I agree it's important that symver work as documented. We should:
> 
> a) fix this bug, it's nasty
> b) write some better test cases for .symver as we obviously have crappy
> ones since they're passing even with this change in the tree.
> 
> David, do you think you'll have a change to have a look at this soon?

I will take a look at it now. A solution does not easily come to mind here.
It looks like the '@' character in ARM should sometimes be treated as part
of a symbol and sometimes the start of a comment. Hopefully we can
distinguish those cases without too much ugliness.





More information about the llvm-commits mailing list