]> granicus.if.org Git - llvm/commit
[tablegen] Add CustomCallingConv and use it to tablegen-erate the outermost parts...
authorDaniel Sanders <daniel.sanders@imgtec.com>
Mon, 1 Dec 2014 15:13:16 +0000 (15:13 +0000)
committerDaniel Sanders <daniel.sanders@imgtec.com>
Mon, 1 Dec 2014 15:13:16 +0000 (15:13 +0000)
commit6f2b3f23f54260ef2b72aaec2acfb3324a459b05
treecc76a97a77c4f3b0f47ce889b7f5d04f9636a405
parent1842c73e1218dce3b52c3769257ae881afdb0b50
[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.

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/branches/release_35@223031 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