struct CallLowering::IncomingValueHandler

Declaration

struct CallLowering::IncomingValueHandler : public ValueHandler { /* full declaration omitted */ };

Description

Base class for ValueHandlers used for arguments coming into the current function, or for return values received from a call.

Declared at: llvm/include/llvm/CodeGen/GlobalISel/CallLowering.h:315

Inherits from: CallLowering::ValueHandler

Member Variables

Inherited from CallLowering::ValueHandler:

public MIRBuilder
public MRI
public IsIncomingArgumentHandler

Method Overview

  • public IncomingValueHandler(llvm::MachineIRBuilder & MIRBuilder, llvm::MachineRegisterInfo & MRI)
  • public void assignValueToReg(llvm::Register ValVReg, llvm::Register PhysReg, llvm::CCValAssign VA)
  • public llvm::Register buildExtensionHint(llvm::CCValAssign & VA, llvm::Register SrcReg, llvm::LLT NarrowTy)

Inherited from CallLowering::ValueHandler:

Methods

IncomingValueHandler(
    llvm::MachineIRBuilder& MIRBuilder,
    llvm::MachineRegisterInfo& MRI)

Declared at: llvm/include/llvm/CodeGen/GlobalISel/CallLowering.h:316

Parameters

llvm::MachineIRBuilder& MIRBuilder
llvm::MachineRegisterInfo& MRI

void assignValueToReg(llvm::Register ValVReg,
                      llvm::Register PhysReg,
                      llvm::CCValAssign VA)

Description

Provides a default implementation for argument handling.

Declared at: llvm/include/llvm/CodeGen/GlobalISel/CallLowering.h:324

Parameters

llvm::Register ValVReg
llvm::Register PhysReg
llvm::CCValAssign VA

llvm::Register buildExtensionHint(
    llvm::CCValAssign& VA,
    llvm::Register SrcReg,
    llvm::LLT NarrowTy)

Description

Insert G_ASSERT_ZEXT/G_ASSERT_SEXT or other hint instruction based on \p VA, returning the new register if a hint was inserted.

Declared at: llvm/include/llvm/CodeGen/GlobalISel/CallLowering.h:321

Parameters

llvm::CCValAssign& VA
llvm::Register SrcReg
llvm::LLT NarrowTy