clang  7.0.0svn
Classes | Public Types | Public Member Functions | List of all members
clang::CodeGen::OffloadEntriesInfoManagerTy Class Reference

Entity that registers the offloading constants that were emitted so far. More...

#include "/opt/doxygen-docs/src/llvm/tools/clang/lib/CodeGen/CGOpenMPRuntime.h"

Classes

class  OffloadEntryInfo
 Base class of the entries info. More...
 
class  OffloadEntryInfoDeviceGlobalVar
 Device global variable entries info. More...
 
class  OffloadEntryInfoTargetRegion
 Target region entries info. More...
 

Public Types

enum  OMPTargetRegionEntryKind : uint32_t { OMPTargetRegionEntryTargetRegion = 0x0, OMPTargetRegionEntryCtor = 0x02, OMPTargetRegionEntryDtor = 0x04 }
 Kind of the target registry entry. More...
 
enum  OMPTargetGlobalVarEntryKind : uint32_t { OMPTargetGlobalVarEntryTo = 0x0 }
 Kind of the global variable entry.. More...
 
typedef llvm::function_ref< void(unsigned, unsigned, StringRef, unsigned, const OffloadEntryInfoTargetRegion &)> OffloadTargetRegionEntryInfoActTy
 brief Applies action Action on all registered entries. More...
 
typedef llvm::function_ref< void(StringRef, const OffloadEntryInfoDeviceGlobalVar &)> OffloadDeviceGlobalVarEntryInfoActTy
 Applies action Action on all registered entries. More...
 

Public Member Functions

bool empty () const
 Return true if a there are no entries defined. More...
 
unsigned size () const
 Return number of entries defined so far. More...
 
 OffloadEntriesInfoManagerTy (CodeGenModule &CGM)
 
void initializeTargetRegionEntryInfo (unsigned DeviceID, unsigned FileID, StringRef ParentName, unsigned LineNum, unsigned Order)
 Initialize target region entry. More...
 
void registerTargetRegionEntryInfo (unsigned DeviceID, unsigned FileID, StringRef ParentName, unsigned LineNum, llvm::Constant *Addr, llvm::Constant *ID, OMPTargetRegionEntryKind Flags)
 Register target region entry. More...
 
bool hasTargetRegionEntryInfo (unsigned DeviceID, unsigned FileID, StringRef ParentName, unsigned LineNum) const
 Return true if a target region entry with the provided information exists. More...
 
void actOnTargetRegionEntriesInfo (const OffloadTargetRegionEntryInfoActTy &Action)
 
void initializeDeviceGlobalVarEntryInfo (StringRef Name, OMPTargetGlobalVarEntryKind Flags, unsigned Order)
 Initialize device global variable entry. More...
 
void registerDeviceGlobalVarEntryInfo (StringRef VarName, llvm::Constant *Addr, CharUnits VarSize, OMPTargetGlobalVarEntryKind Flags, llvm::GlobalValue::LinkageTypes Linkage)
 Register device global variable entry. More...
 
bool hasDeviceGlobalVarEntryInfo (StringRef VarName) const
 Checks if the variable with the given name has been registered already. More...
 
void actOnDeviceGlobalVarEntriesInfo (const OffloadDeviceGlobalVarEntryInfoActTy &Action)
 

Detailed Description

Entity that registers the offloading constants that were emitted so far.

Definition at line 394 of file CGOpenMPRuntime.h.

Member Typedef Documentation

◆ OffloadDeviceGlobalVarEntryInfoActTy

Applies action Action on all registered entries.

Definition at line 575 of file CGOpenMPRuntime.h.

◆ OffloadTargetRegionEntryInfoActTy

typedef llvm::function_ref<void(unsigned, unsigned, StringRef, unsigned, const OffloadEntryInfoTargetRegion &)> clang::CodeGen::OffloadEntriesInfoManagerTy::OffloadTargetRegionEntryInfoActTy

brief Applies action Action on all registered entries.

Definition at line 513 of file CGOpenMPRuntime.h.

Member Enumeration Documentation

◆ OMPTargetGlobalVarEntryKind

Kind of the global variable entry..

Enumerator
OMPTargetGlobalVarEntryTo 

Mark the entry as a to declare target.

Definition at line 522 of file CGOpenMPRuntime.h.

◆ OMPTargetRegionEntryKind

Kind of the target registry entry.

Enumerator
OMPTargetRegionEntryTargetRegion 

Mark the entry as target region.

OMPTargetRegionEntryCtor 

Mark the entry as a global constructor.

OMPTargetRegionEntryDtor 

Mark the entry as a global destructor.

Definition at line 461 of file CGOpenMPRuntime.h.

Constructor & Destructor Documentation

◆ OffloadEntriesInfoManagerTy()

clang::CodeGen::OffloadEntriesInfoManagerTy::OffloadEntriesInfoManagerTy ( CodeGenModule CGM)
inline

Definition at line 454 of file CGOpenMPRuntime.h.

Member Function Documentation

◆ actOnDeviceGlobalVarEntriesInfo()

void clang::CodeGen::OffloadEntriesInfoManagerTy::actOnDeviceGlobalVarEntriesInfo ( const OffloadDeviceGlobalVarEntryInfoActTy Action)

◆ actOnTargetRegionEntriesInfo()

void clang::CodeGen::OffloadEntriesInfoManagerTy::actOnTargetRegionEntriesInfo ( const OffloadTargetRegionEntryInfoActTy Action)

◆ empty()

bool clang::CodeGen::OffloadEntriesInfoManagerTy::empty ( ) const

◆ hasDeviceGlobalVarEntryInfo()

bool clang::CodeGen::OffloadEntriesInfoManagerTy::hasDeviceGlobalVarEntryInfo ( StringRef  VarName) const
inline

Checks if the variable with the given name has been registered already.

Definition at line 569 of file CGOpenMPRuntime.h.

◆ hasTargetRegionEntryInfo()

bool clang::CodeGen::OffloadEntriesInfoManagerTy::hasTargetRegionEntryInfo ( unsigned  DeviceID,
unsigned  FileID,
StringRef  ParentName,
unsigned  LineNum 
) const

Return true if a target region entry with the provided information exists.

◆ initializeDeviceGlobalVarEntryInfo()

void clang::CodeGen::OffloadEntriesInfoManagerTy::initializeDeviceGlobalVarEntryInfo ( StringRef  Name,
OMPTargetGlobalVarEntryKind  Flags,
unsigned  Order 
)

Initialize device global variable entry.

Referenced by clang::CodeGen::loadOffloadInfoMetadata().

◆ initializeTargetRegionEntryInfo()

void clang::CodeGen::OffloadEntriesInfoManagerTy::initializeTargetRegionEntryInfo ( unsigned  DeviceID,
unsigned  FileID,
StringRef  ParentName,
unsigned  LineNum,
unsigned  Order 
)

Initialize target region entry.

Referenced by clang::CodeGen::loadOffloadInfoMetadata().

◆ registerDeviceGlobalVarEntryInfo()

void clang::CodeGen::OffloadEntriesInfoManagerTy::registerDeviceGlobalVarEntryInfo ( StringRef  VarName,
llvm::Constant *  Addr,
CharUnits  VarSize,
OMPTargetGlobalVarEntryKind  Flags,
llvm::GlobalValue::LinkageTypes  Linkage 
)

Register device global variable entry.

Referenced by clang::CodeGen::registerTargetGlobalVariable().

◆ registerTargetRegionEntryInfo()

void clang::CodeGen::OffloadEntriesInfoManagerTy::registerTargetRegionEntryInfo ( unsigned  DeviceID,
unsigned  FileID,
StringRef  ParentName,
unsigned  LineNum,
llvm::Constant *  Addr,
llvm::Constant *  ID,
OMPTargetRegionEntryKind  Flags 
)

Register target region entry.

◆ size()

unsigned clang::CodeGen::OffloadEntriesInfoManagerTy::size ( ) const
inline

Return number of entries defined so far.

Definition at line 453 of file CGOpenMPRuntime.h.

Referenced by clang::CodeGen::createOffloadEntriesAndInfoMetadata().


The documentation for this class was generated from the following file: