1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-26 14:33:02 +02:00
llvm-mirror/test/CodeGen
Michael Kuperstein c9165a5a41 [X86] ABI change for x86-32: pass 3 vector arguments in-register instead of 4, except on Darwin.
This changes the ABI used on 32-bit x86 for passing vector arguments. 
Historically, clang passes the first 4 vector arguments in-register, and additional vector arguments on the stack, regardless of platform. That is different from the behavior of gcc, icc, and msvc, all of which pass only the first 3 arguments in-register.
The 3-register convention is documented, unofficially, in Agner's calling convention guide, and, officially, in the recently released version 1.0 of the i386 psABI.

Darwin is kept as is because the OS X ABI Function Call Guide explicitly documents the current (4-register) behavior.

This fixes PR21510

Differential revision: http://reviews.llvm.org/D9644

llvm-svn: 237682
2015-05-19 11:06:56 +00:00
..
AArch64 Revert r237579, as it broke windows buildbots 2015-05-18 16:39:16 +00:00
ARM ARM: allow jump tables to be placed as constant islands. 2015-05-18 17:10:40 +00:00
BPF
CPP
Generic [Statepoints] Support for "patchable" statepoints. 2015-05-12 23:52:24 +00:00
Hexagon [Hexagon] Generate hardware loop for a vectorized loop 2015-05-14 20:36:19 +00:00
Inputs IR: Give 'DI' prefix to debug info metadata 2015-04-29 16:38:44 +00:00
Mips [mips] Do not place users of $ra in the delay slot of call instructions. 2015-05-14 13:17:56 +00:00
MSP430
NVPTX
PowerPC [PowerPC] Add extra r2 read deps on @toc@l relocations 2015-05-18 06:25:59 +00:00
R600 R600/SI: add pass to mark CF live ranges as non-spillable 2015-05-12 17:13:02 +00:00
SPARC Add support for the Sparc implementation-defined "ASR" registers. 2015-05-18 16:29:48 +00:00
SystemZ [DAGCombiner] Account for getVectorIdxTy() when narrowing vector load 2015-05-05 19:34:10 +00:00
Thumb IR: Give 'DI' prefix to debug info metadata 2015-04-29 16:38:44 +00:00
Thumb2 ARM: allow jump tables to be placed as constant islands. 2015-05-18 17:10:40 +00:00
WinEH Changed renaming of local symbols by inserting a dot vefore the numeric suffix. 2015-05-12 16:47:30 +00:00
X86 [X86] ABI change for x86-32: pass 3 vector arguments in-register instead of 4, except on Darwin. 2015-05-19 11:06:56 +00:00
XCore IR: Give 'DI' prefix to debug info metadata 2015-04-29 16:38:44 +00:00