29 lines
1.0 KiB
C++
29 lines
1.0 KiB
C++
#pragma once
|
|
|
|
#include "mlir/Dialect/Arith/IR/Arith.h"
|
|
#include "mlir/IR/Builders.h"
|
|
#include "mlir/IR/BuiltinAttributes.h"
|
|
#include "mlir/IR/BuiltinTypes.h"
|
|
#include "mlir/IR/Operation.h"
|
|
#include "mlir/IR/Value.h"
|
|
#include "mlir/Transforms/FoldUtils.h"
|
|
|
|
namespace onnx_mlir {
|
|
|
|
mlir::Block* getHostConstantBlock(mlir::Operation* anchorOp);
|
|
|
|
mlir::Value getOrCreateHostConstant(mlir::Operation* anchorOp,
|
|
mlir::Attribute value,
|
|
mlir::Type type,
|
|
mlir::OperationFolder& folder);
|
|
|
|
mlir::Value getOrCreateHostConstantLike(mlir::arith::ConstantOp constantOp, mlir::OperationFolder& folder);
|
|
|
|
mlir::Value getOrCreateHostIndexConstant(mlir::Operation* anchorOp, int64_t value, mlir::OperationFolder& folder);
|
|
|
|
mlir::Value getOrCreateHostI32Constant(mlir::Operation* anchorOp, int32_t value, mlir::OperationFolder& folder);
|
|
|
|
mlir::Value getOrCreateHostI64Constant(mlir::Operation* anchorOp, int64_t value, mlir::OperationFolder& folder);
|
|
|
|
} // namespace onnx_mlir
|