[LLVMdev] x86_stdcallcc @<n> mangling vs. '\1' prefix [was: x86_stdcallcc and extra name mangling on Windows]

Reid Kleckner rnk at google.com
Tue Apr 2 08:35:21 PDT 2013


-llvm-dev, +llvm-commits

Any thoughts on this?


On Fri, Mar 29, 2013 at 4:37 AM, Anton Korobeynikov <anton at korobeynikov.info
> wrote:

> Reid,
>
> I believe I had some concerns over the patch... Let me find / resurrect
> them :)
>
> On Fri, Mar 29, 2013 at 4:12 AM, Reid Kleckner <rnk at google.com> wrote:
> > Anton, what do you think of David's patch with this test case?  OK to
> commit
> > that?
> >
> >
> > On Wed, Feb 20, 2013 at 12:43 PM, Anton Korobeynikov
> > <anton at korobeynikov.info> wrote:
> >>
> >> The patch looks incorrect. The code just needs to handle \1 properly
> >> and clang extended to add explicit \1 to the names which does not
> >> require mangling.
> >>
> >> I do not think that moving whole mangling to clang is a good idea,
> >> because then everyone who uses LLVM to call WinApi functions will need
> >> to mangle by hands.
> >>
> >> On Wed, Feb 20, 2013 at 11:25 PM, Timur Iskhodzhanov
> >> <timurrrr at google.com> wrote:
> >> > I don't remember anything other that what I've written in the bug João
> >> > has mentioned.
> >> >
> >> > Probably something like this patch
> >> > http://llvm.org/bugs/show_bug.cgi?id=14410#c6
> >> > ?
> >> >
> >> > 2013/2/20 João Matos <ripzonetriton at gmail.com>:
> >> >> I think so. There have been other reports lately related to this
> being
> >> >> wrong.
> >> >>
> >> >> http://llvm.org/bugs/show_bug.cgi?id=14410
> >> >>
> >> >> CC'ing Timur since he might know more about this.
> >> >>
> >> >> On Wed, Feb 20, 2013 at 5:27 PM, David Nadlinger <
> code at klickverbot.at>
> >> >> wrote:
> >> >>>
> >> >>> On Tue, Feb 19, 2013 at 2:13 PM, Duncan Sands <baldrick at free.fr>
> >> >>> wrote:
> >> >>> >> My question: Is there an easy way of disabling the name-mangling
> >> >>> >> part
> >> >>> >> but keep the rest of the CC that I missed?
> >> >>> > if you use "\1" + "usual name", it will disable name mangling if
> you
> >> >>> > are
> >> >>> > lucky.  A leading \1 is LLVM's way of saying: leave this name
> alone!
> >> >>>
> >> >>> Seems like I'm out of luck - the @<n> suffix is added
> >> >>> (AddFastCallStdCallSuffix) in the GlobalValue
> >> >>> Magnler::getNameWithPrefix overload, without paying respect to
> whether
> >> >>> the name originally had a '\1' prefix or not.
> >> >>>
> >> >>> Should this be changed?
> >> >>>
> >> >>> David
> >> >>> _______________________________________________
> >> >>> LLVM Developers mailing list
> >> >>> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> >> >>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
> >> >>
> >> >>
> >> >>
> >> >>
> >> >> --
> >> >> João Matos
> >> >
> >> > _______________________________________________
> >> > LLVM Developers mailing list
> >> > LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> >> > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
> >>
> >>
> >>
> >> --
> >> With best regards, Anton Korobeynikov
> >> Faculty of Mathematics and Mechanics, Saint Petersburg State University
> >>
> >> _______________________________________________
> >> LLVM Developers mailing list
> >> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> >> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
> >
> >
>
>
>
> --
> With best regards, Anton Korobeynikov
> Faculty of Mathematics and Mechanics, Saint Petersburg State University
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20130402/5268ba18/attachment.html>


More information about the llvm-commits mailing list