9#ifndef LLVM_ADT_ILIST_BASE_H
10#define LLVM_ADT_ILIST_BASE_H
18template <
bool EnableSentinelTracking,
class ParentTy>
class ilist_base {
48 First.setPrev(
nullptr);
49 Final->setNext(
nullptr);
60 "Insertion point can't be one of the transferred nodes");
assert(ImpDefSCC.getReg()==AMDGPU::SCC &&ImpDefSCC.isDef())
Implementations of list algorithms using ilist_node_base.
static void removeRange(T &First, T &Last)
static void insertBefore(T &Next, T &N)
static void removeRangeImpl(node_base_type &First, node_base_type &Last)
static void insertBeforeImpl(node_base_type &Next, node_base_type &N)
static void transferBeforeImpl(node_base_type &Next, node_base_type &First, node_base_type &Last)
static void transferBefore(T &Next, T &First, T &Last)
static void removeImpl(node_base_type &N)
Base class for ilist nodes.
This is an optimization pass for GlobalISel generic memory operations.
@ First
Helpers to iterate all locations in the MemoryEffectsBase class.