LLVM 22.0.0git
MVEGatherScatterLowering.cpp File Reference

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "arm-mve-gather-scatter-lowering"

Functions

 INITIALIZE_PASS (MVEGatherScatterLowering, DEBUG_TYPE, "MVE gather/scattering lowering pass", false, false) Pass *llvm
static bool checkOffsetSize (Value *Offsets, unsigned TargetElemCount)
static bool isAddLikeOr (Instruction *I, const DataLayout &DL)
static bool hasAllGatScatUsers (Instruction *I, const DataLayout &DL)
static ValueCheckAndCreateOffsetAdd (Value *X, unsigned ScaleX, Value *Y, unsigned ScaleY, IRBuilder<> &Builder)

Variables

cl::opt< boolEnableMaskedGatherScatters ("enable-arm-maskedgatscat", cl::Hidden, cl::init(true), cl::desc("Enable the generation of masked gathers and scatters"))

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "arm-mve-gather-scatter-lowering"

Definition at line 47 of file MVEGatherScatterLowering.cpp.

Function Documentation

◆ CheckAndCreateOffsetAdd()

◆ checkOffsetSize()

◆ hasAllGatScatUsers()

bool hasAllGatScatUsers ( Instruction * I,
const DataLayout & DL )
static

◆ INITIALIZE_PASS()

INITIALIZE_PASS ( MVEGatherScatterLowering ,
DEBUG_TYPE ,
"MVE gather/scattering lowering pass" ,
false ,
false  )

◆ isAddLikeOr()

bool isAddLikeOr ( Instruction * I,
const DataLayout & DL )
static

Definition at line 366 of file MVEGatherScatterLowering.cpp.

References DL, llvm::haveNoCommonBitsSet(), and I.

Referenced by hasAllGatScatUsers().

Variable Documentation

◆ EnableMaskedGatherScatters

cl::opt< bool > EnableMaskedGatherScatters("enable-arm-maskedgatscat", cl::Hidden, cl::init(true), cl::desc("Enable the generation of masked gathers and scatters")) ( "enable-arm-maskedgatscat" ,
cl::Hidden ,
cl::init(true) ,
cl::desc("Enable the generation of masked gathers and scatters")  )