LLVM 19.0.0git
Public Member Functions | Public Attributes | Static Public Attributes | List of all members
llvm::CallLowering::ArgInfo Struct Reference

#include "llvm/CodeGen/GlobalISel/CallLowering.h"

Inheritance diagram for llvm::CallLowering::ArgInfo:
Inheritance graph
[legend]

Public Member Functions

 ArgInfo (ArrayRef< Register > Regs, Type *Ty, unsigned OrigIndex, ArrayRef< ISD::ArgFlagsTy > Flags=ArrayRef< ISD::ArgFlagsTy >(), bool IsFixed=true, const Value *OrigValue=nullptr)
 
 ArgInfo (ArrayRef< Register > Regs, const Value &OrigValue, unsigned OrigIndex, ArrayRef< ISD::ArgFlagsTy > Flags=ArrayRef< ISD::ArgFlagsTy >(), bool IsFixed=true)
 
 ArgInfo ()=default
 
- Public Member Functions inherited from llvm::CallLowering::BaseArgInfo
 BaseArgInfo (Type *Ty, ArrayRef< ISD::ArgFlagsTy > Flags=ArrayRef< ISD::ArgFlagsTy >(), bool IsFixed=true)
 
 BaseArgInfo ()
 

Public Attributes

SmallVector< Register, 4 > Regs
 
SmallVector< Register, 2 > OrigRegs
 
const ValueOrigValue = nullptr
 Optionally track the original IR value for the argument.
 
unsigned OrigArgIndex
 Index original Function's argument.
 
- Public Attributes inherited from llvm::CallLowering::BaseArgInfo
TypeTy
 
SmallVector< ISD::ArgFlagsTy, 4 > Flags
 
bool IsFixed
 

Static Public Attributes

static const unsigned NoArgIndex = UINT_MAX
 Sentinel value for implicit machine-level input arguments.
 

Detailed Description

Definition at line 62 of file CallLowering.h.

Constructor & Destructor Documentation

◆ ArgInfo() [1/3]

llvm::CallLowering::ArgInfo::ArgInfo ( ArrayRef< Register Regs,
Type Ty,
unsigned  OrigIndex,
ArrayRef< ISD::ArgFlagsTy Flags = ArrayRef<ISD::ArgFlagsTy>(),
bool  IsFixed = true,
const Value OrigValue = nullptr 
)
inline

◆ ArgInfo() [2/3]

llvm::CallLowering::ArgInfo::ArgInfo ( ArrayRef< Register Regs,
const Value OrigValue,
unsigned  OrigIndex,
ArrayRef< ISD::ArgFlagsTy Flags = ArrayRef<ISD::ArgFlagsTy>(),
bool  IsFixed = true 
)
inline

Definition at line 94 of file CallLowering.h.

◆ ArgInfo() [3/3]

llvm::CallLowering::ArgInfo::ArgInfo ( )
default

Member Data Documentation

◆ NoArgIndex

const unsigned llvm::CallLowering::ArgInfo::NoArgIndex = UINT_MAX
static

Sentinel value for implicit machine-level input arguments.

Definition at line 79 of file CallLowering.h.

Referenced by llvm::CallLowering::insertSRetIncomingArgument(), and llvm::CallLowering::insertSRetOutgoingArgument().

◆ OrigArgIndex

unsigned llvm::CallLowering::ArgInfo::OrigArgIndex

Index original Function's argument.

Definition at line 76 of file CallLowering.h.

Referenced by llvm::CallLowering::splitToValueTypes().

◆ OrigRegs

SmallVector<Register, 2> llvm::CallLowering::ArgInfo::OrigRegs

Definition at line 67 of file CallLowering.h.

◆ OrigValue

const Value* llvm::CallLowering::ArgInfo::OrigValue = nullptr

Optionally track the original IR value for the argument.

This may not be meaningful in all contexts. This should only be used on for forwarding through to use for aliasing information in MachinePointerInfo for memory arguments.

Definition at line 73 of file CallLowering.h.

Referenced by llvm::AMDGPUCallLowering::lowerTailCall(), and llvm::CallLowering::splitToValueTypes().

◆ Regs

SmallVector<Register, 4> llvm::CallLowering::ArgInfo::Regs

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