LLVM 22.0.0git
llvm::FastISel::CallLoweringInfo Struct Reference

#include "llvm/CodeGen/FastISel.h"

Public Member Functions

 CallLoweringInfo ()
CallLoweringInfosetCallee (Type *ResultTy, FunctionType *FuncTy, const Value *Target, ArgListTy &&ArgsList, const CallBase &Call)
CallLoweringInfosetCallee (Type *ResultTy, FunctionType *FuncTy, MCSymbol *Target, ArgListTy &&ArgsList, const CallBase &Call, unsigned FixedArgs=~0U)
CallLoweringInfosetCallee (CallingConv::ID CC, Type *ResultTy, const Value *Target, ArgListTy &&ArgsList, unsigned FixedArgs=~0U)
CallLoweringInfosetCallee (const DataLayout &DL, MCContext &Ctx, CallingConv::ID CC, Type *ResultTy, StringRef Target, ArgListTy &&ArgsList, unsigned FixedArgs=~0U)
CallLoweringInfosetCallee (CallingConv::ID CC, Type *ResultTy, MCSymbol *Target, ArgListTy &&ArgsList, unsigned FixedArgs=~0U)
CallLoweringInfosetTailCall (bool Value=true)
CallLoweringInfosetIsPatchPoint (bool Value=true)
ArgListTygetArgs ()
void clearOuts ()
void clearIns ()

Public Attributes

TypeRetTy = nullptr
bool RetSExt: 1
bool RetZExt: 1
bool IsVarArg: 1
bool IsInReg: 1
bool DoesNotReturn: 1
bool IsReturnValueUsed: 1
bool IsPatchPoint: 1
bool IsTailCall = false
unsigned NumFixedArgs = -1
CallingConv::ID CallConv = CallingConv::C
const ValueCallee = nullptr
MCSymbolSymbol = nullptr
ArgListTy Args
const CallBaseCB = nullptr
MachineInstrCall = nullptr
Register ResultReg
unsigned NumResultRegs = 0
SmallVector< Value *, 16 > OutVals
SmallVector< ISD::ArgFlagsTy, 16 > OutFlags
SmallVector< Register, 16 > OutRegs
SmallVector< ISD::InputArg, 4 > Ins
SmallVector< Register, 4 > InRegs

Detailed Description

Definition at line 70 of file FastISel.h.

Constructor & Destructor Documentation

◆ CallLoweringInfo()

llvm::FastISel::CallLoweringInfo::CallLoweringInfo ( )
inline

Member Function Documentation

◆ clearIns()

void llvm::FastISel::CallLoweringInfo::clearIns ( )
inline

Definition at line 195 of file FastISel.h.

References InRegs, and Ins.

Referenced by llvm::FastISel::lowerCallTo().

◆ clearOuts()

void llvm::FastISel::CallLoweringInfo::clearOuts ( )
inline

Definition at line 189 of file FastISel.h.

References OutFlags, OutRegs, and OutVals.

Referenced by llvm::FastISel::lowerCallTo().

◆ getArgs()

ArgListTy & llvm::FastISel::CallLoweringInfo::getArgs ( )
inline

Definition at line 187 of file FastISel.h.

References Args.

Referenced by llvm::FastISel::lowerCallTo().

◆ setCallee() [1/5]

CallLoweringInfo & llvm::FastISel::CallLoweringInfo::setCallee ( CallingConv::ID CC,
Type * ResultTy,
const Value * Target,
ArgListTy && ArgsList,
unsigned FixedArgs = ~0U )
inline

Definition at line 150 of file FastISel.h.

References Args, CallConv, Callee, CallLoweringInfo(), NumFixedArgs, and RetTy.

◆ setCallee() [2/5]

CallLoweringInfo & llvm::FastISel::CallLoweringInfo::setCallee ( CallingConv::ID CC,
Type * ResultTy,
MCSymbol * Target,
ArgListTy && ArgsList,
unsigned FixedArgs = ~0U )
inline

Definition at line 166 of file FastISel.h.

References Args, CallConv, CallLoweringInfo(), NumFixedArgs, RetTy, and Symbol.

◆ setCallee() [3/5]

FastISel::CallLoweringInfo & FastISel::CallLoweringInfo::setCallee ( const DataLayout & DL,
MCContext & Ctx,
CallingConv::ID CC,
Type * ResultTy,
StringRef Target,
ArgListTy && ArgsList,
unsigned FixedArgs = ~0U )

Definition at line 744 of file FastISel.cpp.

References llvm::FastISel::DL, llvm::Mangler::getNameWithPrefix(), and setCallee().

◆ setCallee() [4/5]

CallLoweringInfo & llvm::FastISel::CallLoweringInfo::setCallee ( Type * ResultTy,
FunctionType * FuncTy,
const Value * Target,
ArgListTy && ArgsList,
const CallBase & Call )
inline

◆ setCallee() [5/5]

CallLoweringInfo & llvm::FastISel::CallLoweringInfo::setCallee ( Type * ResultTy,
FunctionType * FuncTy,
MCSymbol * Target,
ArgListTy && ArgsList,
const CallBase & Call,
unsigned FixedArgs = ~0U )
inline

◆ setIsPatchPoint()

CallLoweringInfo & llvm::FastISel::CallLoweringInfo::setIsPatchPoint ( bool Value = true)
inline

Definition at line 182 of file FastISel.h.

References CallLoweringInfo(), and IsPatchPoint.

Referenced by llvm::FastISel::selectPatchpoint().

◆ setTailCall()

CallLoweringInfo & llvm::FastISel::CallLoweringInfo::setTailCall ( bool Value = true)
inline

Definition at line 177 of file FastISel.h.

References CallLoweringInfo(), and IsTailCall.

Referenced by llvm::FastISel::lowerCall().

Member Data Documentation

◆ Args

ArgListTy llvm::FastISel::CallLoweringInfo::Args

Definition at line 88 of file FastISel.h.

Referenced by getArgs(), setCallee(), setCallee(), setCallee(), and setCallee().

◆ Call

MachineInstr* llvm::FastISel::CallLoweringInfo::Call = nullptr

◆ CallConv

CallingConv::ID llvm::FastISel::CallLoweringInfo::CallConv = CallingConv::C

Definition at line 85 of file FastISel.h.

Referenced by llvm::FastISel::lowerCallTo(), setCallee(), setCallee(), setCallee(), and setCallee().

◆ Callee

const Value* llvm::FastISel::CallLoweringInfo::Callee = nullptr

Definition at line 86 of file FastISel.h.

Referenced by setCallee(), setCallee(), and setCallee().

◆ CB

const CallBase* llvm::FastISel::CallLoweringInfo::CB = nullptr

Definition at line 89 of file FastISel.h.

Referenced by llvm::FastISel::lowerCallTo(), setCallee(), and setCallee().

◆ DoesNotReturn

bool llvm::FastISel::CallLoweringInfo::DoesNotReturn

Definition at line 76 of file FastISel.h.

Referenced by CallLoweringInfo(), setCallee(), and setCallee().

◆ InRegs

SmallVector<Register, 4> llvm::FastISel::CallLoweringInfo::InRegs

◆ Ins

SmallVector<ISD::InputArg, 4> llvm::FastISel::CallLoweringInfo::Ins

Definition at line 97 of file FastISel.h.

Referenced by clearIns(), and llvm::FastISel::lowerCallTo().

◆ IsInReg

bool llvm::FastISel::CallLoweringInfo::IsInReg

◆ IsPatchPoint

bool llvm::FastISel::CallLoweringInfo::IsPatchPoint

Definition at line 78 of file FastISel.h.

Referenced by CallLoweringInfo(), and setIsPatchPoint().

◆ IsReturnValueUsed

bool llvm::FastISel::CallLoweringInfo::IsReturnValueUsed

Definition at line 77 of file FastISel.h.

Referenced by CallLoweringInfo(), llvm::FastISel::lowerCallTo(), setCallee(), and setCallee().

◆ IsTailCall

bool llvm::FastISel::CallLoweringInfo::IsTailCall = false

Definition at line 82 of file FastISel.h.

Referenced by setTailCall().

◆ IsVarArg

bool llvm::FastISel::CallLoweringInfo::IsVarArg

Definition at line 74 of file FastISel.h.

Referenced by CallLoweringInfo(), llvm::FastISel::lowerCallTo(), setCallee(), and setCallee().

◆ NumFixedArgs

unsigned llvm::FastISel::CallLoweringInfo::NumFixedArgs = -1

Definition at line 84 of file FastISel.h.

Referenced by setCallee(), setCallee(), setCallee(), and setCallee().

◆ NumResultRegs

unsigned llvm::FastISel::CallLoweringInfo::NumResultRegs = 0

Definition at line 92 of file FastISel.h.

Referenced by llvm::FastISel::lowerCallTo(), and llvm::FastISel::selectPatchpoint().

◆ OutFlags

SmallVector<ISD::ArgFlagsTy, 16> llvm::FastISel::CallLoweringInfo::OutFlags

Definition at line 95 of file FastISel.h.

Referenced by clearOuts(), and llvm::FastISel::lowerCallTo().

◆ OutRegs

SmallVector<Register, 16> llvm::FastISel::CallLoweringInfo::OutRegs

Definition at line 96 of file FastISel.h.

Referenced by clearOuts(), and llvm::FastISel::selectPatchpoint().

◆ OutVals

SmallVector<Value *, 16> llvm::FastISel::CallLoweringInfo::OutVals

Definition at line 94 of file FastISel.h.

Referenced by clearOuts(), and llvm::FastISel::lowerCallTo().

◆ ResultReg

Register llvm::FastISel::CallLoweringInfo::ResultReg

Definition at line 91 of file FastISel.h.

Referenced by llvm::FastISel::lowerCallTo(), and llvm::FastISel::selectPatchpoint().

◆ RetSExt

bool llvm::FastISel::CallLoweringInfo::RetSExt

◆ RetTy

Type* llvm::FastISel::CallLoweringInfo::RetTy = nullptr

◆ RetZExt

bool llvm::FastISel::CallLoweringInfo::RetZExt

◆ Symbol

MCSymbol* llvm::FastISel::CallLoweringInfo::Symbol = nullptr

Definition at line 87 of file FastISel.h.

Referenced by setCallee(), and setCallee().


The documentation for this struct was generated from the following files: