extractParts overloads

Synopses

Declared in <llvm/CodeGen/GlobalISel/Utils.h>

Split a wide generic register into bitwise blocks of type Ty.

void
extractParts(
    Register Reg,
    LLT Ty,
    int NumParts,
    SmallVectorImpl<Register>& VRegs,
    MachineIRBuilder& MIRBuilder,
    MachineRegisterInfo& MRI);

Version which handles irregular splits.

bool
extractParts(
    Register Reg,
    LLT RegTy,
    LLT MainTy,
    LLT& LeftoverTy,
    SmallVectorImpl<Register>& VRegs,
    SmallVectorImpl<Register>& LeftoverVRegs,
    MachineIRBuilder& MIRBuilder,
    MachineRegisterInfo& MRI);

Return Value

True if the irregular split succeeded.

Parameters

Name

Description

Reg

Wide register to split.

Ty

Type of each extracted part.

NumParts

Number of parts to extract.

VRegs

Receives the registers for each extracted part.

MIRBuilder

Builder used to emit extract operations.

MRI

Register information for the function.

RegTy

Type of Reg.

MainTy

Type used for the evenly sized main parts.

LeftoverTy

Set to the type of any leftover part.

LeftoverVRegs

Receives the registers for leftover parts.

Created with MrDocs