HomePhabricator

MS ABI: Pass 'sret' as the second parameter of instance methods

Description

MS ABI: Pass 'sret' as the second parameter of instance methods

Summary:
MSVC always passes 'sret' after 'this', unlike GCC. This required
changing a number of places in Clang that assumed the sret parameter was
always first in LLVM IR.

This fixes win64 MSVC ABI compatibility for methods returning structs.

Reviewers: rsmith, majnemer

Subscribers: cfe-commits

Differential Revision: http://reviews.llvm.org/D3618

Details

Committed
rnkMay 9 2014, 3:46 PM
Differential Revision
D3618: MS ABI: Pass 'sret' as the second parameter of instance methods
Parents
rL208457: delinearize together all accesses to the same array
Branches
Unknown
Tags
Unknown

Event Timeline