[MIPS GlobalISel] Select MSA vector generic and builtin add
[llvm-complete.git] / lib / Target / AArch64 / AArch64CallingConvention.h
blob5a55d090d7c89d9226b895c289b0a449d72d7c48
1 //=== AArch64CallingConvention.h - AArch64 CC entry points ------*- 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-exception
6 //
7 //===----------------------------------------------------------------------===//
8 //
9 // This file declares the entry points for AArch64 calling convention analysis.
11 //===----------------------------------------------------------------------===//
13 #ifndef LLVM_LIB_TARGET_AARCH64_AARCH64CALLINGCONVENTION_H
14 #define LLVM_LIB_TARGET_AARCH64_AARCH64CALLINGCONVENTION_H
16 #include "llvm/CodeGen/CallingConvLower.h"
18 namespace llvm {
19 bool CC_AArch64_AAPCS(unsigned ValNo, MVT ValVT, MVT LocVT,
20 CCValAssign::LocInfo LocInfo, ISD::ArgFlagsTy ArgFlags,
21 CCState &State);
22 bool CC_AArch64_DarwinPCS_VarArg(unsigned ValNo, MVT ValVT, MVT LocVT,
23 CCValAssign::LocInfo LocInfo,
24 ISD::ArgFlagsTy ArgFlags, CCState &State);
25 bool CC_AArch64_DarwinPCS(unsigned ValNo, MVT ValVT, MVT LocVT,
26 CCValAssign::LocInfo LocInfo,
27 ISD::ArgFlagsTy ArgFlags, CCState &State);
28 bool CC_AArch64_DarwinPCS_ILP32_VarArg(unsigned ValNo, MVT ValVT, MVT LocVT,
29 CCValAssign::LocInfo LocInfo,
30 ISD::ArgFlagsTy ArgFlags, CCState &State);
31 bool CC_AArch64_Win64_VarArg(unsigned ValNo, MVT ValVT, MVT LocVT,
32 CCValAssign::LocInfo LocInfo,
33 ISD::ArgFlagsTy ArgFlags, CCState &State);
34 bool CC_AArch64_WebKit_JS(unsigned ValNo, MVT ValVT, MVT LocVT,
35 CCValAssign::LocInfo LocInfo,
36 ISD::ArgFlagsTy ArgFlags, CCState &State);
37 bool CC_AArch64_GHC(unsigned ValNo, MVT ValVT, MVT LocVT,
38 CCValAssign::LocInfo LocInfo, ISD::ArgFlagsTy ArgFlags,
39 CCState &State);
40 bool RetCC_AArch64_AAPCS(unsigned ValNo, MVT ValVT, MVT LocVT,
41 CCValAssign::LocInfo LocInfo, ISD::ArgFlagsTy ArgFlags,
42 CCState &State);
43 bool RetCC_AArch64_WebKit_JS(unsigned ValNo, MVT ValVT, MVT LocVT,
44 CCValAssign::LocInfo LocInfo,
45 ISD::ArgFlagsTy ArgFlags, CCState &State);
46 } // namespace llvm
48 #endif