[AIX] Refactor AIX Call Lowering to use CCState. NFCI.
authorSean Fertile <sd.fertile@gmail.com>
Mon, 28 Oct 2019 15:31:26 +0000 (11:31 -0400)
committerSean Fertile <sd.fertile@gmail.com>
Mon, 28 Oct 2019 16:44:22 +0000 (12:44 -0400)
commit582e3c09d4872db42ecff386031ddf823aab992e
treed9ad6b4b613283a2db091c8c0aabff7e465cf778
parent6f2de9cbb37fa53029ad861204366e87cce8fcb1
[AIX] Refactor AIX Call Lowering to use CCState. NFCI.

This patch reworks the AIX call lowering to use CCState. Some defensive errors
are added in this patch to protect from emitting bad code for calling convention
logic that has not been implemented by design. The use of CCState follows the
precedent of other targets and enables the reuse of calling convention logic in
LowerFormalArguments, which will be rewritten to also use CCState in a late
patch.

Patch by Chris Bowler.

Differential Revision: https://reviews.llvm.org/D69101
llvm/lib/Target/PowerPC/PPCISelLowering.cpp
llvm/test/CodeGen/PowerPC/aix-byval-param.ll [new file with mode: 0644]
llvm/test/CodeGen/PowerPC/aix-nest-param.ll [new file with mode: 0644]
llvm/test/CodeGen/PowerPC/aix-sret-param.ll [new file with mode: 0644]
llvm/test/CodeGen/PowerPC/aix-stackargs.ll [new file with mode: 0644]