LLVM  8.0.1
Namespaces | Macros | Enumerations | Functions
NVPTX.h File Reference
#include "MCTargetDesc/NVPTXBaseInfo.h"
#include "llvm/ADT/StringMap.h"
#include "llvm/IR/Module.h"
#include "llvm/IR/Value.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Target/TargetMachine.h"
#include <cassert>
#include <iosfwd>
#include "NVPTXGenRegisterInfo.inc"
#include "NVPTXGenInstrInfo.inc"
Include dependency graph for NVPTX.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 llvm
 This class represents lattice values for constants.
 
 llvm::NVPTXCC
 
 llvm::NVPTX
 
 llvm::NVPTX::PTXLdStInstCode
 
 llvm::NVPTX::PTXCvtMode
 PTXCvtMode - Conversion code enumeration.
 
 llvm::NVPTX::PTXCmpMode
 PTXCmpMode - Comparison mode enumeration.
 

Macros

#define GET_REGINFO_ENUM
 
#define GET_INSTRINFO_ENUM
 

Enumerations

enum  llvm::NVPTXCC::CondCodes {
  llvm::NVPTXCC::EQ, llvm::NVPTXCC::NE, llvm::NVPTXCC::LT, llvm::NVPTXCC::LE,
  llvm::NVPTXCC::GT, llvm::NVPTXCC::GE
}
 
enum  llvm::NVPTX::DrvInterface { llvm::NVPTX::NVCL, llvm::NVPTX::CUDA }
 
enum  llvm::NVPTX::VecInstType {
  llvm::NVPTX::VecInstTypeShift = 0, llvm::NVPTX::VecInstTypeMask = 0xF, llvm::NVPTX::VecNOP = 0, llvm::NVPTX::VecLoad = 1,
  llvm::NVPTX::VecStore = 2, llvm::NVPTX::VecBuild = 3, llvm::NVPTX::VecShuffle = 4, llvm::NVPTX::VecExtract = 5,
  llvm::NVPTX::VecInsert = 6, llvm::NVPTX::VecDest = 7, llvm::NVPTX::VecOther = 15
}
 
enum  llvm::NVPTX::SimpleMove { llvm::NVPTX::SimpleMoveMask = 0x10, llvm::NVPTX::SimpleMoveShift = 4 }
 
enum  llvm::NVPTX::LoadStore { llvm::NVPTX::isLoadMask = 0x20, llvm::NVPTX::isLoadShift = 5, llvm::NVPTX::isStoreMask = 0x40, llvm::NVPTX::isStoreShift = 6 }
 
enum  llvm::NVPTX::PTXLdStInstCode::AddressSpace {
  llvm::NVPTX::PTXLdStInstCode::GENERIC = 0, llvm::NVPTX::PTXLdStInstCode::GLOBAL = 1, llvm::NVPTX::PTXLdStInstCode::CONSTANT = 2, llvm::NVPTX::PTXLdStInstCode::SHARED = 3,
  llvm::NVPTX::PTXLdStInstCode::PARAM = 4, llvm::NVPTX::PTXLdStInstCode::LOCAL = 5
}
 
enum  llvm::NVPTX::PTXLdStInstCode::FromType { llvm::NVPTX::PTXLdStInstCode::Unsigned = 0, llvm::NVPTX::PTXLdStInstCode::Signed, llvm::NVPTX::PTXLdStInstCode::Float, llvm::NVPTX::PTXLdStInstCode::Untyped }
 
enum  llvm::NVPTX::PTXLdStInstCode::VecType { llvm::NVPTX::PTXLdStInstCode::Scalar = 1, llvm::NVPTX::PTXLdStInstCode::V2 = 2, llvm::NVPTX::PTXLdStInstCode::V4 = 4 }
 
enum  llvm::NVPTX::PTXCvtMode::CvtMode {
  llvm::NVPTX::PTXCvtMode::NONE = 0, llvm::NVPTX::PTXCvtMode::RNI, llvm::NVPTX::PTXCvtMode::RZI, llvm::NVPTX::PTXCvtMode::RMI,
  llvm::NVPTX::PTXCvtMode::RPI, llvm::NVPTX::PTXCvtMode::RN, llvm::NVPTX::PTXCvtMode::RZ, llvm::NVPTX::PTXCvtMode::RM,
  llvm::NVPTX::PTXCvtMode::RP, llvm::NVPTX::PTXCvtMode::BASE_MASK = 0x0F, llvm::NVPTX::PTXCvtMode::FTZ_FLAG = 0x10, llvm::NVPTX::PTXCvtMode::SAT_FLAG = 0x20
}
 
enum  llvm::NVPTX::PTXCmpMode::CmpMode {
  llvm::NVPTX::PTXCmpMode::EQ = 0, llvm::NVPTX::PTXCmpMode::NE, llvm::NVPTX::PTXCmpMode::LT, llvm::NVPTX::PTXCmpMode::LE,
  llvm::NVPTX::PTXCmpMode::GT, llvm::NVPTX::PTXCmpMode::GE, llvm::NVPTX::PTXCmpMode::LO, llvm::NVPTX::PTXCmpMode::LS,
  llvm::NVPTX::PTXCmpMode::HI, llvm::NVPTX::PTXCmpMode::HS, llvm::NVPTX::PTXCmpMode::EQU, llvm::NVPTX::PTXCmpMode::NEU,
  llvm::NVPTX::PTXCmpMode::LTU, llvm::NVPTX::PTXCmpMode::LEU, llvm::NVPTX::PTXCmpMode::GTU, llvm::NVPTX::PTXCmpMode::GEU,
  llvm::NVPTX::PTXCmpMode::NUM, llvm::NVPTX::PTXCmpMode::NotANumber, llvm::NVPTX::PTXCmpMode::BASE_MASK = 0xFF, llvm::NVPTX::PTXCmpMode::FTZ_FLAG = 0x100
}
 

Functions

FunctionPassllvm::createNVPTXISelDag (NVPTXTargetMachine &TM, llvm::CodeGenOpt::Level OptLevel)
 createNVPTXISelDag - This pass converts a legalized DAG into a NVPTX-specific DAG, ready for instruction scheduling. More...
 
ModulePassllvm::createNVPTXAssignValidGlobalNamesPass ()
 
ModulePassllvm::createGenericToNVVMPass ()
 
FunctionPassllvm::createNVVMIntrRangePass (unsigned int SmVersion)
 
FunctionPassllvm::createNVVMReflectPass (unsigned int SmVersion)
 
MachineFunctionPassllvm::createNVPTXPrologEpilogPass ()
 
MachineFunctionPassllvm::createNVPTXReplaceImageHandlesPass ()
 
FunctionPassllvm::createNVPTXImageOptimizerPass ()
 
FunctionPassllvm::createNVPTXLowerArgsPass (const NVPTXTargetMachine *TM)
 
BasicBlockPassllvm::createNVPTXLowerAllocaPass ()
 
MachineFunctionPassllvm::createNVPTXPeephole ()
 
MachineFunctionPassllvm::createNVPTXProxyRegErasurePass ()
 
Targetllvm::getTheNVPTXTarget32 ()
 
Targetllvm::getTheNVPTXTarget64 ()
 

Macro Definition Documentation

◆ GET_INSTRINFO_ENUM

#define GET_INSTRINFO_ENUM

Definition at line 175 of file NVPTX.h.

◆ GET_REGINFO_ENUM

#define GET_REGINFO_ENUM

Definition at line 171 of file NVPTX.h.