LLVM  14.0.0git
Classes | Namespaces | Functions
Waymarking.h File Reference
#include "llvm/ADT/STLExtras.h"
#include "llvm/Support/PointerLikeTypeTraits.h"
Include dependency graph for Waymarking.h:

Go to the source code of this file.

Classes

struct  llvm::detail::WaymarkingTraits< NumBits >
 
struct  llvm::Waymarker< T, WTraits >
 This class is responsible for tagging (and retrieving the tag of) a given element of type T. More...
 
struct  llvm::Waymarker< T *, WTraits >
 

Namespaces

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

Functions

template<class TIter , class Marker = Waymarker< typename std::iterator_traits<TIter>::value_type>>
void llvm::fillWaymarks (TIter Begin, TIter End, size_t Offset=0)
 Sets up the waymarking algorithm's tags for a given range [Begin, End). More...
 
template<typename R >
void llvm::fillWaymarks (R &&Range, size_t Offset=0)
 Sets up the waymarking algorithm's tags for a given range. More...
 
template<class TIter , class Marker = Waymarker< typename std::iterator_traits<TIter>::value_type>>
TIter llvm::followWaymarks (TIter I)
 Retrieves the element marked with tag of only STOP_MASK, by following the waymarks. More...