================
@@ -3296,7 +3296,36 @@ void cir::CoroBodyOp::build(OpBuilder &builder,
OperationState &result,
// CopyOp Definitions
//===----------------------------------------------------------------------===//
+// Prints the pointer type(s) for a `cir.copy`. `src` and `dst` share the same
+// pointee type but may differ in address space; a single type is printed when
+// they match, otherwise both are printed (`src` first).
+static void printCopyTypes(mlir::OpAsmPrinter &printer, mlir::Operation *,
+ mlir::Type srcType, mlir::Type dstType) {
+ printer.printType(srcType);
+ if (srcType != dstType) {
+ printer << ", ";
+ printer.printType(dstType);
+ }
+}
+
+static mlir::ParseResult parseCopyTypes(mlir::OpAsmParser &parser,
----------------
erichkeane wrote:
Tests added! Works as hoped/anticipated.
https://github.com/llvm/llvm-project/pull/211873
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits