]> granicus.if.org Git - clang/commit
Implement IRGen for the x86 vectorcall convention
authorReid Kleckner <reid@kleckner.net>
Fri, 31 Oct 2014 22:00:51 +0000 (22:00 +0000)
committerReid Kleckner <reid@kleckner.net>
Fri, 31 Oct 2014 22:00:51 +0000 (22:00 +0000)
commit3568925e1dc883ae5a9a301d0475e9997975da27
treee6699656be204a4f12b6892857b35f65ce5d5f8d
parent6feb239df80cf9b28d6a2570b68e71c7466cd584
Implement IRGen for the x86 vectorcall convention

The most complex aspect of the convention is the handling of homogeneous
vector and floating point aggregates.  Reuse the homogeneous aggregate
classification code that we use on PPC64 and ARM for this.

This convention also has a C mangling, and we apparently implement that
in both Clang and LLVM.

Reviewed By: majnemer

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

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@221006 91177308-0d34-0410-b5e6-96231b3b80d8
lib/AST/Mangle.cpp
lib/Basic/Targets.cpp
lib/CodeGen/CGCall.cpp
lib/CodeGen/MicrosoftCXXABI.cpp
lib/CodeGen/TargetInfo.cpp
test/CodeGen/mangle-windows.c
test/CodeGen/microsoft-call-conv.c
test/CodeGen/vectorcall.c [new file with mode: 0644]
test/CodeGenCXX/homogeneous-aggregates.cpp