llvm-6502/test/CodeGen/SPARC
Reid Kleckner 805a83c041 Allow sret on the second parameter as well as the first
MSVC always places the implicit sret parameter after the implicit this
parameter of instance methods.  We used to handle this for
x86_thiscallcc by allocating the sret parameter on the stack and leaving
the this pointer in ecx, but that doesn't handle alternative calling
conventions like cdecl, stdcall, fastcall, or the win64 convention.

Instead, change the verifier to allow sret on the second parameter.

This also requires changing the Mips and X86 backends to return the
argument with the sret parameter, instead of assuming that the sret
parameter comes first.

The Sparc backend also returns sret parameters in a register, but I
wasn't able to update it to handle secondary sret parameters.  It
currently calls report_fatal_error if you feed it an sret in the second
parameter.

Reviewers: rafael.espindola, majnemer

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@208453 91177308-0d34-0410-b5e6-96231b3b80d8
2014-05-09 22:32:13 +00:00
..
64abi.ll
64bit.ll
64cond.ll
64spill.ll
2006-01-22-BitConvertLegalize.ll
2007-05-09-JumpTables.ll
2007-07-05-LiveIntervalAssert.ll
2008-10-10-InlineAsmMemoryOperand.ll
2008-10-10-InlineAsmRegOperand.ll
2009-08-28-PIC.ll
2009-08-28-WeakLinkage.ll
2011-01-11-Call.ll
2011-01-11-CC.ll
2011-01-11-FrameAddr.ll
2011-01-19-DelaySlot.ll Revert "blockfreq: Temporarily turn on -debug-only=block-freq" 2014-04-19 22:45:44 +00:00
2011-01-21-ByValArgs.ll
2011-01-22-SRet.ll
2011-12-03-TailDuplication.ll
2012-05-01-LowerArguments.ll
2013-05-17-CallFrame.ll
atomics.ll IR: add a second ordering operand to cmpxhg for failure 2014-03-11 10:48:52 +00:00
basictest.ll
blockaddr.ll
constpool.ll
ctpop.ll
DbgValueOtherTargets.test
exception.ll Remove the -disable-cfi option. 2014-05-05 17:33:26 +00:00
float.ll
fp128.ll
globals.ll
inlineasm.ll
leafproc.ll
lit.local.cfg
mature-mc-support.ll [Sparc] Add support for parsing directives in SparcAsmParser. 2014-03-01 02:18:04 +00:00
missinglabel.ll
mult-alt-generic-sparc.ll
obj-relocs.ll
parts.ll
private.ll
rem.ll
setjmp.ll Remove the linker_private and linker_private_weak linkages. 2014-03-13 23:18:37 +00:00
spillsize.ll
sret-secondary.ll Allow sret on the second parameter as well as the first 2014-05-09 22:32:13 +00:00
tls.ll
trap.ll
varargs.ll