blob: 191e0fa619b24f4258eb49062806c7b63750b569 [file] [log] [blame]
Juergen Ributzka9969d3e2013-11-08 23:28:16 +00001//=== X86CallingConv.h - X86 Custom Calling Convention Routines -*- C++ -*-===//
2//
Chandler Carruth2946cd72019-01-19 08:50:56 +00003// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
Juergen Ributzka9969d3e2013-11-08 23:28:16 +00006//
7//===----------------------------------------------------------------------===//
8//
9// This file contains the custom routines for the X86 Calling Convention that
10// aren't done by tablegen.
11//
12//===----------------------------------------------------------------------===//
13
Benjamin Kramera7c40ef2014-08-13 16:26:38 +000014#ifndef LLVM_LIB_TARGET_X86_X86CALLINGCONV_H
15#define LLVM_LIB_TARGET_X86_X86CALLINGCONV_H
Juergen Ributzka9969d3e2013-11-08 23:28:16 +000016
Michael Kuperstein2ea81ba2015-12-28 14:39:21 +000017#include "MCTargetDesc/X86MCTargetDesc.h"
Juergen Ributzka9969d3e2013-11-08 23:28:16 +000018#include "llvm/CodeGen/CallingConvLower.h"
19#include "llvm/IR/CallingConv.h"
20
21namespace llvm {
22
Reid Kleckner38f99002019-01-19 00:33:02 +000023bool RetCC_X86(unsigned ValNo, MVT ValVT, MVT LocVT,
24 CCValAssign::LocInfo LocInfo, ISD::ArgFlagsTy ArgFlags,
25 CCState &State);
Oren Ben Simhon489d6ef2016-11-17 09:59:40 +000026
Reid Kleckner38f99002019-01-19 00:33:02 +000027bool CC_X86(unsigned ValNo, MVT ValVT, MVT LocVT, CCValAssign::LocInfo LocInfo,
28 ISD::ArgFlagsTy ArgFlags, CCState &State);
Michael Kuperstein2ea81ba2015-12-28 14:39:21 +000029
Alexander Kornienkof00654e2015-06-23 09:49:53 +000030} // End llvm namespace
Juergen Ributzka9969d3e2013-11-08 23:28:16 +000031
32#endif
33