LLVM 23.0.0git
NVPTXUtilities.cpp File Reference
#include "NVPTXUtilities.h"
#include "NVPTX.h"
#include "NVPTXTargetMachine.h"
#include "NVVMProperties.h"
#include "llvm/IR/DataLayout.h"
#include "llvm/IR/Function.h"
#include "llvm/Support/Alignment.h"
#include "llvm/Support/CommandLine.h"
#include <algorithm>

Go to the source code of this file.

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.

Functions

Functionllvm::getMaybeBitcastedCallee (const CallBase *CB)
Align llvm::getFunctionParamOptimizedAlign (const Function *F, Type *ArgTy, const DataLayout &DL)
 Since function arguments are passed via .param space, we may want to increase their alignment in a way that ensures that we can effectively vectorize their loads & stores.
Align llvm::getFunctionArgumentAlignment (const Function *F, Type *Ty, unsigned Idx, const DataLayout &DL)
Align llvm::getFunctionByValParamAlign (const Function *F, Type *ArgTy, Align InitialAlign, const DataLayout &DL)
bool llvm::shouldEmitPTXNoReturn (const Value *V, const TargetMachine &TM)

Variables

static cl::opt< boolllvm::ForceMinByValParamAlign ("nvptx-force-min-byval-param-align", cl::Hidden, cl::desc("NVPTX Specific: force 4-byte minimal alignment for byval" " params of device functions."), cl::init(false))