[PATCH] Bug 14984 - Implement __attribute__((ms_abi))

Reid Kleckner rnk at google.com
Tue Jun 18 05:44:56 PDT 2013


On Tue, Jun 18, 2013 at 6:25 AM, Benno Rice <benno at freebsd.org> wrote:

>
> On 12/06/2013, at 10:40 PM, Reid Kleckner <rnk at google.com> wrote:
>
> On Wed, Jun 12, 2013 at 7:13 AM, Charles Davis <cdavis5x at gmail.com> wrote:
>
>>
>> You mean like in my patch here:
>>
>> http://llvm-reviews.chandlerc.com/D729
>>
>> ?
>>
>
> Yeah, that looks good to me.  :)
>
> From the docs, it seems attr(ms_abi) just maps to x86_64_win64cc and
> x86_stdcallcc depending on the architecture:
>
> http://gcc.gnu.org/onlinedocs/gcc/Function-Attributes.html#index-g_t_0040code_007bsysv_005fabi_007d-attribute-2670
> gcc also appears to support a sysv_abi attribute, which lets you use the
> sysv CCs when targeting Windows.
>
>
> So what's in the way of this being committed? Is there anything I can do
> that would accelerate things?
>

Charles, can you commit http://llvm-reviews.chandlerc.com/D729, or is
something blocking that?

For the LLVM side, Charles's patch looks preferable to me.  I'd apply his
patch to LLVM and base your clang patch on that, and resend.

You should also answer Richard's question about whether the types are
canonically different.

For i686, does ms_abi map to stdcall?  Does gcc consider them canonically
different (can you form different overloads)?

For x86_64, can I form an overload between ms_abi and normal function
pointers?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20130618/bf78e721/attachment.html>


More information about the cfe-commits mailing list