llvm-6502/test/CodeGen
Reid Kleckner 65c98b9da4 [ms-cxxabi] Add a new calling convention that swaps 'this' and 'sret'
MSVC always places the 'this' parameter for a method first.  The
implicit 'sret' pointer for methods always comes second.  We already
implement this for __thiscall by putting sret parameters on the stack,
but __cdecl methods require putting both parameters on the stack in
opposite order.

Using a special calling convention allows frontends to keep the sret
parameter first, which avoids breaking lots of assumptions in LLVM and
Clang.

Fixes PR15768 with the corresponding change in Clang.

Reviewers: ributzka, majnemer

Differential Revision: http://llvm-reviews.chandlerc.com/D2663

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@200561 91177308-0d34-0410-b5e6-96231b3b80d8
2014-01-31 17:41:22 +00:00
..
AArch64 [AArch64] Custom lower concat_vector patterns with v4i16, v4i32, v8i8, v8i16, v16i8 types. 2014-01-30 21:46:54 +00:00
ARM PGO branch weight: update edge weights in SelectionDAGBuilder. 2014-01-31 00:42:44 +00:00
CPP
Generic Additional fix for 200201: due to dependence on bitwidth test was moved to X86 directory. 2014-01-27 09:43:10 +00:00
Hexagon
Inputs
Mips [mips][msa] Add insert.d instruction. 2014-01-31 13:31:20 +00:00
MSP430
NVPTX [NVPTX] Fix emitting aggregate parameters 2014-01-28 18:35:29 +00:00
PowerPC Handle spilling the PPC GPRC_NOR0 register class 2014-01-28 05:32:58 +00:00
R600 R600/SI: Add pattern for truncating i32 to i1 2014-01-28 03:01:16 +00:00
SPARC Implement SPARCv9 atomic_swap_64 with a pseudo. 2014-01-30 04:48:46 +00:00
SystemZ XFAIL test/CodeGen/SystemZ/alias-01.ll which requires CodeGen TBAA 2014-01-25 19:31:44 +00:00
Thumb
Thumb2 PGO branch weight: update edge weights in IfConverter. 2014-01-29 23:18:47 +00:00
X86 [ms-cxxabi] Add a new calling convention that swaps 'this' and 'sret' 2014-01-31 17:41:22 +00:00
XCore