class NonLocalDepResult

Declaration

class NonLocalDepResult { /* full declaration omitted */ };

Description

This is a result from a NonLocal dependence query. For each BasicBlock (the BB entry) it keeps a MemDepResult and the (potentially phi translated) address that was live in the block.

Declared at: llvm/include/llvm/Analysis/MemoryDependenceAnalysis.h:224

Member Variables

private llvm::NonLocalDepEntry Entry
private llvm::Value* Address

Method Overview

  • public NonLocalDepResult(llvm::BasicBlock * bb, llvm::MemDepResult result, llvm::Value * address)
  • public llvm::Value * getAddress() const
  • public llvm::BasicBlock * getBB() const
  • public const llvm::MemDepResult & getResult() const
  • public void setResult(const llvm::MemDepResult & R, llvm::Value * Addr)

Methods

NonLocalDepResult(llvm::BasicBlock* bb,
                  llvm::MemDepResult result,
                  llvm::Value* address)

Declared at: llvm/include/llvm/Analysis/MemoryDependenceAnalysis.h:229

Parameters

llvm::BasicBlock* bb
llvm::MemDepResult result
llvm::Value* address

llvm::Value* getAddress() const

Description

Returns the address of this pointer in this block. This can be different than the address queried for the non-local result because of phi translation. This returns null if the address was not available in a block (i.e. because phi translation failed) or if this is a cached result and that address was deleted. The address is always null for a non-local 'call' dependence.

Declared at: llvm/include/llvm/Analysis/MemoryDependenceAnalysis.h:250

llvm::BasicBlock* getBB() const

Declared at: llvm/include/llvm/Analysis/MemoryDependenceAnalysis.h:233

const llvm::MemDepResult& getResult() const

Declared at: llvm/include/llvm/Analysis/MemoryDependenceAnalysis.h:240

void setResult(const llvm::MemDepResult& R,
               llvm::Value* Addr)

Declared at: llvm/include/llvm/Analysis/MemoryDependenceAnalysis.h:235

Parameters

const llvm::MemDepResult& R
llvm::Value* Addr