|
MLIR 22.0.0git
|
This class implements a local form of alias analysis that tries to identify the underlying values addressed by each value and performs a few basic checks to see if they alias. More...
#include "mlir/Analysis/AliasAnalysis/LocalAliasAnalysis.h"
Public Member Functions | |
| virtual | ~LocalAliasAnalysis ()=default |
| AliasResult | alias (Value lhs, Value rhs) |
| Given two values, return their aliasing behavior. | |
| ModRefResult | getModRef (Operation *op, Value location) |
| Return the modify-reference behavior of op on location. | |
Protected Member Functions | |
| virtual AliasResult | aliasImpl (Value lhs, Value rhs) |
| Given the two values, return their aliasing behavior. | |
This class implements a local form of alias analysis that tries to identify the underlying values addressed by each value and performs a few basic checks to see if they alias.
Definition at line 24 of file LocalAliasAnalysis.h.
| AliasResult LocalAliasAnalysis::alias | ( | Value | lhs, |
| Value | rhs ) |
Given two values, return their aliasing behavior.
Given the two values, return their aliasing behavior.
Definition at line 440 of file LocalAliasAnalysis.cpp.
References aliasImpl(), collectUnderlyingAddressValues(), lhs, mlir::AliasResult::MayAlias, mlir::AliasResult::MustAlias, mlir::AliasResult::NoAlias, result, and rhs.
Referenced by getModRef().
|
protectedvirtual |
Given the two values, return their aliasing behavior.
Definition at line 342 of file LocalAliasAnalysis.cpp.
References checkDistinctObjects(), getAllocEffectFor(), mlir::Operation::isProperAncestor(), lhs, mlir::m_Constant(), mlir::matchPattern(), mlir::AliasResult::MayAlias, mlir::AliasResult::MustAlias, mlir::AliasResult::NoAlias, result, and rhs.
Referenced by alias().
| ModRefResult LocalAliasAnalysis::getModRef | ( | Operation * | op, |
| Value | location ) |
Return the modify-reference behavior of op on location.
Definition at line 489 of file LocalAliasAnalysis.cpp.
References alias(), mlir::ModRefResult::getMod(), mlir::ModRefResult::getModAndRef(), mlir::ModRefResult::getNoModRef(), mlir::ModRefResult::getRef(), mlir::Operation::hasTrait(), mlir::AliasResult::isMust(), mlir::AliasResult::isNo(), mlir::AliasResult::MayAlias, and result.