LLVM  8.0.0svn
Public Member Functions | Friends | List of all members
AllocaSlices::partition_iterator Class Reference

An iterator over partitions of the alloca's slices. More...

Inheritance diagram for AllocaSlices::partition_iterator:
Inheritance graph
Collaboration diagram for AllocaSlices::partition_iterator:
Collaboration graph

Public Member Functions

bool operator== (const partition_iterator &RHS) const
partition_iteratoroperator++ ()
Partitionoperator* ()
- Public Member Functions inherited from llvm::iterator_facade_base< partition_iterator, std::forward_iterator_tag, Partition >
partition_iterator operator+ (std::ptrdiff_t n) const
partition_iterator operator- (std::ptrdiff_t n) const
partition_iterator & operator++ ()
partition_iterator operator++ (int)
partition_iterator & operator-- ()
partition_iterator operator-- (int)
bool operator!= (const partition_iterator &RHS) const
bool operator> (const partition_iterator &RHS) const
bool operator<= (const partition_iterator &RHS) const
bool operator>= (const partition_iterator &RHS) const
Partition * operator-> ()
Partition * operator-> () const
ReferenceProxy operator[] (std::ptrdiff_t n)
ReferenceProxy operator[] (std::ptrdiff_t n) const


class AllocaSlices

Additional Inherited Members

- Protected Types inherited from llvm::iterator_facade_base< partition_iterator, std::forward_iterator_tag, Partition >

Detailed Description

An iterator over partitions of the alloca's slices.

This iterator implements the core algorithm for partitioning the alloca's slices. It is a forward iterator as we don't support backtracking for efficiency reasons, and re-use a single storage area to maintain the current set of split slices.

It is templated on the slice iterator type to use so that it can operate with either const or non-const slice iterators.

Definition at line 437 of file SROA.cpp.

Member Function Documentation

◆ operator*()

Partition& AllocaSlices::partition_iterator::operator* ( )

◆ operator++()

partition_iterator& AllocaSlices::partition_iterator::operator++ ( )

Definition at line 610 of file SROA.cpp.

◆ operator==()

bool AllocaSlices::partition_iterator::operator== ( const partition_iterator RHS) const

Definition at line 590 of file SROA.cpp.

References assert(), llvm::SmallVectorBase::empty(), and llvm::SmallVectorBase::size().

Friends And Related Function Documentation

◆ AllocaSlices

friend class AllocaSlices

Definition at line 440 of file SROA.cpp.

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