55 lines · c
1//=== ARMCallingConv.h - ARM Custom Calling Convention Routines -*- C++ -*-===//2//3// 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-exception6//7//===----------------------------------------------------------------------===//8//9// This file declares the entry points for ARM calling convention analysis.10//11//===----------------------------------------------------------------------===//12 13#ifndef LLVM_LIB_TARGET_ARM_ARMCALLINGCONV_H14#define LLVM_LIB_TARGET_ARM_ARMCALLINGCONV_H15 16#include "llvm/CodeGen/CallingConvLower.h"17 18namespace llvm {19 20bool CC_ARM_AAPCS(unsigned ValNo, MVT ValVT, MVT LocVT,21 CCValAssign::LocInfo LocInfo, ISD::ArgFlagsTy ArgFlags,22 Type *OrigTy, CCState &State);23bool CC_ARM_AAPCS_VFP(unsigned ValNo, MVT ValVT, MVT LocVT,24 CCValAssign::LocInfo LocInfo, ISD::ArgFlagsTy ArgFlags,25 Type *OrigTy, CCState &State);26bool CC_ARM_APCS(unsigned ValNo, MVT ValVT, MVT LocVT,27 CCValAssign::LocInfo LocInfo, ISD::ArgFlagsTy ArgFlags,28 Type *OrigTy, CCState &State);29bool CC_ARM_APCS_GHC(unsigned ValNo, MVT ValVT, MVT LocVT,30 CCValAssign::LocInfo LocInfo, ISD::ArgFlagsTy ArgFlags,31 Type *OrigTy, CCState &State);32bool FastCC_ARM_APCS(unsigned ValNo, MVT ValVT, MVT LocVT,33 CCValAssign::LocInfo LocInfo, ISD::ArgFlagsTy ArgFlags,34 Type *OrigTy, CCState &State);35bool CC_ARM_Win32_CFGuard_Check(unsigned ValNo, MVT ValVT, MVT LocVT,36 CCValAssign::LocInfo LocInfo,37 ISD::ArgFlagsTy ArgFlags, Type *OrigTy,38 CCState &State);39bool RetCC_ARM_AAPCS(unsigned ValNo, MVT ValVT, MVT LocVT,40 CCValAssign::LocInfo LocInfo, ISD::ArgFlagsTy ArgFlags,41 Type *OrigTy, CCState &State);42bool RetCC_ARM_AAPCS_VFP(unsigned ValNo, MVT ValVT, MVT LocVT,43 CCValAssign::LocInfo LocInfo, ISD::ArgFlagsTy ArgFlags,44 Type *OrigTy, CCState &State);45bool RetCC_ARM_APCS(unsigned ValNo, MVT ValVT, MVT LocVT,46 CCValAssign::LocInfo LocInfo, ISD::ArgFlagsTy ArgFlags,47 Type *OrigTy, CCState &State);48bool RetFastCC_ARM_APCS(unsigned ValNo, MVT ValVT, MVT LocVT,49 CCValAssign::LocInfo LocInfo, ISD::ArgFlagsTy ArgFlags,50 Type *OrigTy, CCState &State);51 52} // namespace llvm53 54#endif55