[cfe-commits] [PATCH] Ignored calling conventions

Aaron Ballman aaron at aaronballman.com
Sun Sep 9 09:39:48 PDT 2012


Ping?

~Aaron

On Fri, Sep 7, 2012 at 8:51 AM, Aaron Ballman <aaron at aaronballman.com> wrote:
> On Fri, Sep 7, 2012 at 2:14 AM, NAKAMURA Takumi <geek4civic at gmail.com> wrote:
>> Aaron, I forgot to mention fastcall. Shall we handle fastcall as well?
>
> Yes, and __thiscall as well.  Basically, it seems like CC_Default is
> what should be specified always on x64 for Windows.
>
> This also brings up a mangling bug with x64 functions:
>
> define linkonce_odr x86_thiscallcc i32
> @"\01?f at foo@@QAEHXZ"(%class.foo* %this) nounwind align 2 {
> PUBLIC  ?f at foo@@QEAAHXZ                                 ; foo::f
>
> And a behavior bug with x86 C functions (but not x64!) in that MSVC
> produces an error when you specify __thiscall on a non-class member
> function.
>
> But I think those are separate patches from this one.  I've filed two
> bug reports about __thiscall behavior differences that have cropped up
> during this endeavor (PR13791 and PR13792).
>
> Latest patch attached addressing the other calling conventions and
> adding a FIXME for retaining the original attribute spelling.
>
> ~Aaron



More information about the cfe-commits mailing list