[tablegen] Add CustomCallingConv and use it to tablegen-erate the outermost parts...
authorDaniel Sanders <daniel.sanders@imgtec.com>
Sat, 1 Nov 2014 17:38:22 +0000 (17:38 +0000)
committerDaniel Sanders <daniel.sanders@imgtec.com>
Sat, 1 Nov 2014 17:38:22 +0000 (17:38 +0000)
commit5e4b1555216fe38ffa17881798b99df2076f4fd1
treef57f4aa72ff325ea88bc68cc8027a22f4e1c5d6b
parent153cd65fd46ffdcd416b64f7ec51dff808fc453f
[tablegen] Add CustomCallingConv and use it to tablegen-erate the outermost parts of the Mips O32 implementation

Summary:
CustomCallingConv is simply a CallingConv that tablegen should not generate the
implementation for. It allows regular CallingConv's to delegate to these custom
functions. This is (currently) necessary for Mips and we cannot use CCCustom
without having to adapt to the different API that CCCustom uses.

This brings us a bit closer to being able to remove
MipsCC::analyzeCallOperands and MipsCC::analyzeFormalArguments in favour of
the common implementation.

No functional change to the targets.

Depends on D3341

Reviewers: vmedic

Reviewed By: vmedic

Subscribers: vmedic, llvm-commits

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@221052 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/Target/TargetCallingConv.td
lib/Target/Mips/MipsCallingConv.td
lib/Target/Mips/MipsISelLowering.cpp
lib/Target/Mips/MipsISelLowering.h
utils/TableGen/CallingConvEmitter.cpp