================
@@ -36,6 +37,76 @@ template <typename ToTest> constexpr bool isCombinedType =
false;
template <typename T>
constexpr bool isCombinedType<CombinedConstructClauseInfo<T>> = true;
+namespace {
+struct DataOperandInfo {
+ mlir::Location beginLoc;
+ mlir::Value varValue;
+ llvm::StringRef name;
+ mlir::ValueRange bounds;
+
+ DataOperandInfo(mlir::Location beginLoc, mlir::Value varValue,
+ llvm::StringRef name, mlir::ValueRange bounds)
+ : beginLoc(beginLoc), varValue(varValue), name(name), bounds(bounds) {}
+};
+
+inline mlir::Value createIntExpr(CIRGen::CIRGenFunction &cgf,
----------------
bcardosolopes wrote:
I understand this is necessary because of templates, but the amount of code in
the header file is a bit scary, any chance we can move some of this to
implementation files? If not, perhaps use a more specific name for things
living inside this namespace? `createIntExpr` for instance is a bit misleading
(sounds simple but ends up doing an unrealized cast).
https://github.com/llvm/llvm-project/pull/140304
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits