|
clang 24.0.0git
|
Basic CIR alias analysis based on pointer provenance and distinct allocation sites. More...
#include "clang/CIR/Dialect/Analysis/CIRBasicAliasAnalysis.h"
Public Member Functions | |
| CIRBasicAliasAnalysis ()=default | |
| CIRBasicAliasAnalysis (CIRBasicAliasAnalysis &&)=default | |
| mlir::AliasResult | alias (mlir::Value lhs, mlir::Value rhs) |
| Return the aliasing behavior between two values. | |
| mlir::ModRefResult | getModRef (mlir::Operation *op, mlir::Value location) |
| Return the modify-reference behavior of op on location. | |
Basic CIR alias analysis based on pointer provenance and distinct allocation sites.
Conservative defaults (MayAlias / ModRef) are returned for cases that are not yet handled.
Definition at line 29 of file CIRBasicAliasAnalysis.h.
|
default |
Referenced by CIRBasicAliasAnalysis().
|
default |
References CIRBasicAliasAnalysis().
| mlir::AliasResult CIRBasicAliasAnalysis::alias | ( | mlir::Value | lhs, |
| mlir::Value | rhs ) |
Return the aliasing behavior between two values.
Returns MayAlias conservatively unless a more precise result can be determined from CIR-specific information (e.g. distinct alloca ops, pointer provenance, restrict attributes).
Definition at line 63 of file CIRBasicAliasAnalysis.cpp.
Referenced by getModRef().
| mlir::ModRefResult CIRBasicAliasAnalysis::getModRef | ( | mlir::Operation * | op, |
| mlir::Value | location ) |
Return the modify-reference behavior of op on location.
Returns ModRef conservatively. CIR ops that carry explicit memory-effect attributes or that are known to be pure/read-only can be handled here.
Definition at line 82 of file CIRBasicAliasAnalysis.cpp.
References alias().