LLVM  7.0.0svn
Public Types | Public Member Functions | Protected Member Functions | List of all members
llvm::VPValue Class Reference

#include "Transforms/Vectorize/VPlanValue.h"

Inheritance diagram for llvm::VPValue:
Inheritance graph
[legend]

Public Types

enum  { VPValueSC, VPUserSC, VPInstructionSC }
 An enumeration for keeping track of the concrete subclass of VPValue that are actually instantiated. More...
 
typedef SmallVectorImpl< VPUser * >::iterator user_iterator
 
typedef SmallVectorImpl< VPUser * >::const_iterator const_user_iterator
 
typedef iterator_range< user_iteratoruser_range
 
typedef iterator_range< const_user_iteratorconst_user_range
 

Public Member Functions

 VPValue ()
 
 VPValue (const VPValue &)=delete
 
VPValueoperator= (const VPValue &)=delete
 
unsigned getVPValueID () const
 
void printAsOperand (raw_ostream &OS) const
 
unsigned getNumUsers () const
 
void addUser (VPUser &User)
 
user_iterator user_begin ()
 
const_user_iterator user_begin () const
 
user_iterator user_end ()
 
const_user_iterator user_end () const
 
user_range users ()
 
const_user_range users () const
 

Protected Member Functions

 VPValue (const unsigned char SC)
 

Detailed Description

Definition at line 39 of file VPlanValue.h.

Member Typedef Documentation

◆ const_user_iterator

Definition at line 72 of file VPlanValue.h.

◆ const_user_range

Definition at line 74 of file VPlanValue.h.

◆ user_iterator

Definition at line 71 of file VPlanValue.h.

◆ user_range

Definition at line 73 of file VPlanValue.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

An enumeration for keeping track of the concrete subclass of VPValue that are actually instantiated.

Values of this enumeration are kept in the SubclassID field of the VPValue objects. They are used for concrete type identification.

Enumerator
VPValueSC 
VPUserSC 
VPInstructionSC 

Definition at line 53 of file VPlanValue.h.

Constructor & Destructor Documentation

◆ VPValue() [1/3]

llvm::VPValue::VPValue ( const unsigned char  SC)
inlineprotected

Definition at line 46 of file VPlanValue.h.

◆ VPValue() [2/3]

llvm::VPValue::VPValue ( )
inline

Definition at line 55 of file VPlanValue.h.

References operator=().

◆ VPValue() [3/3]

llvm::VPValue::VPValue ( const VPValue )
delete

Member Function Documentation

◆ addUser()

void llvm::VPValue::addUser ( VPUser User)
inline

◆ getNumUsers()

unsigned llvm::VPValue::getNumUsers ( ) const
inline

Definition at line 68 of file VPlanValue.h.

References llvm::SmallVectorTemplateCommon< T >::size().

◆ getVPValueID()

unsigned llvm::VPValue::getVPValueID ( ) const
inline
Returns
an ID for the concrete type of this object. This is used to implement the classof checks. This should not be used for any other purpose, as the values may change as LLVM evolves.

Definition at line 62 of file VPlanValue.h.

Referenced by llvm::VPUser::classof(), and llvm::VPInstruction::classof().

◆ operator=()

VPValue& llvm::VPValue::operator= ( const VPValue )
delete

Referenced by llvm::VPUser::VPUser(), and VPValue().

◆ printAsOperand()

void llvm::VPValue::printAsOperand ( raw_ostream OS) const
inline

Definition at line 64 of file VPlanValue.h.

Referenced by llvm::operator<<().

◆ user_begin() [1/2]

user_iterator llvm::VPValue::user_begin ( )
inline

Definition at line 76 of file VPlanValue.h.

References llvm::SmallVectorTemplateCommon< T >::begin().

Referenced by users().

◆ user_begin() [2/2]

const_user_iterator llvm::VPValue::user_begin ( ) const
inline

Definition at line 77 of file VPlanValue.h.

References llvm::SmallVectorTemplateCommon< T >::begin().

◆ user_end() [1/2]

user_iterator llvm::VPValue::user_end ( )
inline

Definition at line 78 of file VPlanValue.h.

References llvm::SmallVectorTemplateCommon< T >::end().

Referenced by users().

◆ user_end() [2/2]

const_user_iterator llvm::VPValue::user_end ( ) const
inline

Definition at line 79 of file VPlanValue.h.

References llvm::SmallVectorTemplateCommon< T >::end().

◆ users() [1/2]

user_range llvm::VPValue::users ( )
inline

Definition at line 80 of file VPlanValue.h.

References user_begin(), and user_end().

◆ users() [2/2]

const_user_range llvm::VPValue::users ( ) const
inline

Definition at line 81 of file VPlanValue.h.

References user_begin(), and user_end().


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