17#ifndef CLANG_CIR_DIALECT_ANALYSIS_CIRBASICALIASANALYSIS_H
18#define CLANG_CIR_DIALECT_ANALYSIS_CIRBASICALIASANALYSIS_H
20#include "mlir/Analysis/AliasAnalysis.h"
21#include "mlir/IR/Operation.h"
22#include "mlir/IR/Value.h"
23#include "mlir/Interfaces/DataLayoutInterfaces.h"
33 : dataLayout(
mlir::DataLayout::closest(op)) {}
44 mlir::AliasResult
alias(mlir::Value lhs, mlir::Value rhs);
50 mlir::ModRefResult
getModRef(mlir::Operation *op, mlir::Value location);
53 mlir::DataLayout dataLayout;
mlir::ModRefResult getModRef(mlir::Operation *op, mlir::Value location)
Return the modify-reference behavior of op on location.
CIRBasicAliasAnalysis(CIRBasicAliasAnalysis &&)=default
mlir::AliasResult alias(mlir::Value lhs, mlir::Value rhs)
Return the aliasing behavior between two values.
CIRBasicAliasAnalysis(mlir::Operation *op)