<p dir="ltr"><br>
On Apr 28, 2016 5:39 PM, "Reid Kleckner" <<a href="mailto:rnk@google.com">rnk@google.com</a>> wrote:<br>
><br>
> rnk added a subscriber: rnk.<br>
> rnk added a comment.<br>
><br>
> In <a href="http://reviews.llvm.org/D17738#367459">http://reviews.llvm.org/D17738#367459</a>, @rafael wrote:<br>
><br>
> > The real stable solution I think is for the IR name to be the final<br>
> >  name. No further mangling involved. It will take a lot of work to get<br>
> >  there, but we can avoid making the situation worse.<br>
><br>
><br>
> The problem there is that we would have to make the IR symbol renamer not append '.N' when renaming symbols with name collisions. Until then, we need something like this.</p>
<p dir="ltr">We only rename internal variables.<br></p>
<p dir="ltr">> I thought we used to have machinery in our assembler for mangling away invalid characters. Did you remove that stuff?</p>
<p dir="ltr">Yes, because it was an incredible confusion on what assemblers can handle and what object files can handle.</p>
<p dir="ltr">If we are asked to create a symbol name that gas cannot handle it is way better to error than to silently rename it.</p>
<p dir="ltr">Cheers</p>