19969d3e6SJuergen Ributzka //=== X86CallingConv.h - X86 Custom Calling Convention Routines -*- C++ -*-===// 29969d3e6SJuergen Ributzka // 3*2946cd70SChandler Carruth // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4*2946cd70SChandler Carruth // See https://llvm.org/LICENSE.txt for license information. 5*2946cd70SChandler Carruth // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 69969d3e6SJuergen Ributzka // 79969d3e6SJuergen Ributzka //===----------------------------------------------------------------------===// 89969d3e6SJuergen Ributzka // 99969d3e6SJuergen Ributzka // This file contains the custom routines for the X86 Calling Convention that 109969d3e6SJuergen Ributzka // aren't done by tablegen. 119969d3e6SJuergen Ributzka // 129969d3e6SJuergen Ributzka //===----------------------------------------------------------------------===// 139969d3e6SJuergen Ributzka 14a7c40ef0SBenjamin Kramer #ifndef LLVM_LIB_TARGET_X86_X86CALLINGCONV_H 15a7c40ef0SBenjamin Kramer #define LLVM_LIB_TARGET_X86_X86CALLINGCONV_H 169969d3e6SJuergen Ributzka 172ea81bafSMichael Kuperstein #include "MCTargetDesc/X86MCTargetDesc.h" 189969d3e6SJuergen Ributzka #include "llvm/CodeGen/CallingConvLower.h" 199969d3e6SJuergen Ributzka #include "llvm/IR/CallingConv.h" 209969d3e6SJuergen Ributzka 219969d3e6SJuergen Ributzka namespace llvm { 229969d3e6SJuergen Ributzka 2338f9900aSReid Kleckner bool RetCC_X86(unsigned ValNo, MVT ValVT, MVT LocVT, 2438f9900aSReid Kleckner CCValAssign::LocInfo LocInfo, ISD::ArgFlagsTy ArgFlags, 2538f9900aSReid Kleckner CCState &State); 26489d6effSOren Ben Simhon 2738f9900aSReid Kleckner bool CC_X86(unsigned ValNo, MVT ValVT, MVT LocVT, CCValAssign::LocInfo LocInfo, 2838f9900aSReid Kleckner ISD::ArgFlagsTy ArgFlags, CCState &State); 292ea81bafSMichael Kuperstein 30f00654e3SAlexander Kornienko } // End llvm namespace 319969d3e6SJuergen Ributzka 329969d3e6SJuergen Ributzka #endif 339969d3e6SJuergen Ributzka 34