class MemorySSA::ClobberWalkerBase

Declaration

template <class AliasAnalysisType>
class MemorySSA::ClobberWalkerBase { /* full declaration omitted */ };

Declared at: llvm/lib/Analysis/MemorySSA.cpp:1032

Templates

AliasAnalysisType

Member Variables

private ClobberWalker<AliasAnalysisType> Walker
private llvm::MemorySSA* MSSA

Method Overview

Methods

ClobberWalkerBase<AliasAnalysisType>(
    llvm::MemorySSA* M,
    AliasAnalysisType* A,
    llvm::DominatorTree* D)

Declared at: llvm/lib/Analysis/MemorySSA.cpp:1037

Parameters

llvm::MemorySSA* M
AliasAnalysisType* A
llvm::DominatorTree* D

llvm::MemoryAccess* getClobberingMemoryAccessBase(
    llvm::MemoryAccess*,
    const llvm::MemoryLocation&,
    unsigned int&)

Description

Walk the use-def chains starting at \p StartingAccess and find the MemoryAccess that actually clobbers Loc.

Declared at: llvm/lib/Analysis/MemorySSA.cpp:1040

Parameters

llvm::MemoryAccess*
const llvm::MemoryLocation&
unsigned int&

Returns

our clobbering memory access

llvm::MemoryAccess* getClobberingMemoryAccessBase(
    llvm::MemoryAccess*,
    unsigned int&,
    bool,
    bool UseInvariantGroup = true)

Declared at: llvm/lib/Analysis/MemorySSA.cpp:1049

Parameters

llvm::MemoryAccess*
unsigned int&
bool
bool UseInvariantGroup = true