diff options
Diffstat (limited to 'lib/Target/AArch64/AArch64CallLowering.h')
-rw-r--r-- | lib/Target/AArch64/AArch64CallLowering.h | 27 |
1 files changed, 15 insertions, 12 deletions
diff --git a/lib/Target/AArch64/AArch64CallLowering.h b/lib/Target/AArch64/AArch64CallLowering.h index ce6676249df6..d96ce95c4de0 100644 --- a/lib/Target/AArch64/AArch64CallLowering.h +++ b/lib/Target/AArch64/AArch64CallLowering.h @@ -1,4 +1,4 @@ -//===-- llvm/lib/Target/AArch64/AArch64CallLowering.h - Call lowering -----===// +//===--- AArch64CallLowering.h - Call lowering ------------------*- C++ -*-===// // // The LLVM Compiler Infrastructure // @@ -12,18 +12,20 @@ /// //===----------------------------------------------------------------------===// -#ifndef LLVM_LIB_TARGET_AARCH64_AARCH64CALLLOWERING -#define LLVM_LIB_TARGET_AARCH64_AARCH64CALLLOWERING +#ifndef LLVM_LIB_TARGET_AARCH64_AARCH64CALLLOWERING_H +#define LLVM_LIB_TARGET_AARCH64_AARCH64CALLLOWERING_H +#include "llvm/ADT/ArrayRef.h" #include "llvm/CodeGen/GlobalISel/CallLowering.h" -#include "llvm/CodeGen/ValueTypes.h" +#include <cstdint> +#include <functional> namespace llvm { class AArch64TargetLowering; class AArch64CallLowering: public CallLowering { - public: +public: AArch64CallLowering(const AArch64TargetLowering &TLI); bool lowerReturn(MachineIRBuilder &MIRBuiler, const Value *Val, @@ -32,8 +34,8 @@ class AArch64CallLowering: public CallLowering { bool lowerFormalArguments(MachineIRBuilder &MIRBuilder, const Function &F, ArrayRef<unsigned> VRegs) const override; - bool lowerCall(MachineIRBuilder &MIRBuilder, const MachineOperand &Callee, - const ArgInfo &OrigRet, + bool lowerCall(MachineIRBuilder &MIRBuilder, CallingConv::ID CallConv, + const MachineOperand &Callee, const ArgInfo &OrigRet, ArrayRef<ArgInfo> OrigArgs) const override; private: @@ -44,13 +46,14 @@ private: typedef std::function<void(MachineIRBuilder &, int, CCValAssign &)> MemHandler; - typedef std::function<void(ArrayRef<unsigned>, ArrayRef<uint64_t>)> - SplitArgTy; + typedef std::function<void(unsigned, uint64_t)> SplitArgTy; void splitToValueTypes(const ArgInfo &OrigArgInfo, SmallVectorImpl<ArgInfo> &SplitArgs, const DataLayout &DL, MachineRegisterInfo &MRI, - SplitArgTy SplitArg) const; + const SplitArgTy &SplitArg) const; }; -} // End of namespace llvm; -#endif + +} // end namespace llvm + +#endif // LLVM_LIB_TARGET_AARCH64_AARCH64CALLLOWERING_H |