Add helper functions for creating constant SymbolicExpr

Similarly to GetAffineConstantExpr, I'm introducing GetSymbolicConstantExpr/s to create constants of SymbolicExpr from a list of values.

PiperOrigin-RevId: 826020777
This commit is contained in:
A. Unique TensorFlower 2025-10-30 07:21:11 -07:00 committed by TensorFlower Gardener
parent fd71e8be05
commit 345a251037

View File

@ -167,6 +167,23 @@ class SymbolicExprContext {
mlir::MLIRContext* mlir_context_;
};
// Free function to create a constant SymbolicExpr.
inline SymbolicExpr GetSymbolicConstantExpr(int64_t constant,
SymbolicExprContext* context) {
return context->CreateConstant(constant);
}
// Free function to create a vector of constant SymbolicExprs.
inline llvm::SmallVector<SymbolicExpr> GetSymbolicConstantExprs(
llvm::ArrayRef<int64_t> constants, SymbolicExprContext* context) {
llvm::SmallVector<SymbolicExpr> exprs;
exprs.reserve(constants.size());
for (int64_t constant : constants) {
exprs.push_back(GetSymbolicConstantExpr(constant, context));
}
return exprs;
}
} // namespace xla
namespace llvm {