LLVM 22.0.0git
llvm::CallLowering::ArgInfo Struct Reference

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

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

Public Member Functions

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

Static Public Attributes

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

Detailed Description

Definition at line 61 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>(),
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>() )
inline

◆ 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 78 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 75 of file CallLowering.h.

Referenced by ArgInfo(), and llvm::CallLowering::splitToValueTypes().

◆ OrigRegs

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

Definition at line 66 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 72 of file CallLowering.h.

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

◆ Regs


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