[cfe-commits] [PATCH] Ignored calling conventions
Aaron Ballman
aaron at aaronballman.com
Fri Sep 7 05:51:29 PDT 2012
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
-------------- next part --------------
A non-text attachment was scrubbed...
Name: callconv.patch
Type: application/octet-stream
Size: 4578 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20120907/773e26c9/attachment.obj>
More information about the cfe-commits
mailing list