Print the `// ----` separator between modules when using -split-input-file with mlir-opt

This allows to pipe sequences of `mlir-opt -split-input-file | mlir-opt -split-input-file`.

Depends On D117750

Reviewed By: rriddle

Differential Revision: https://reviews.llvm.org/D117756
This commit is contained in:
Mehdi Amini 2022-01-21 05:15:46 +00:00
parent 7b3d307288
commit 26167cae45
2 changed files with 8 additions and 6 deletions

View File

@ -158,10 +158,12 @@ LogicalResult mlir::MlirOptMain(raw_ostream &outputStream,
return splitAndProcessBuffer(
std::move(buffer),
[&](std::unique_ptr<MemoryBuffer> chunkBuffer, raw_ostream &os) {
return processBuffer(os, std::move(chunkBuffer), verifyDiagnostics,
verifyPasses, allowUnregisteredDialects,
preloadDialectsInContext, passManagerSetupFn,
registry, threadPool);
LogicalResult result = processBuffer(
os, std::move(chunkBuffer), verifyDiagnostics, verifyPasses,
allowUnregisteredDialects, preloadDialectsInContext,
passManagerSetupFn, registry, threadPool);
os << "// -----\n";
return result;
},
outputStream);

View File

@ -1,8 +1,8 @@
// RUN: mlir-opt -split-input-file %s | FileCheck %s
// Verify the printed output can be parsed.
// RUN: mlir-opt -split-input-file %s | mlir-opt -allow-unregistered-dialect | FileCheck %s
// RUN: mlir-opt -split-input-file %s | mlir-opt -split-input-file | FileCheck %s
// Verify the generic form can be parsed.
// RUN: mlir-opt -split-input-file -mlir-print-op-generic %s | mlir-opt -allow-unregistered-dialect | FileCheck %s
// RUN: mlir-opt -split-input-file -mlir-print-op-generic %s | mlir-opt -split-input-file | FileCheck %s
func @compute1(%A: memref<10x10xf32>, %B: memref<10x10xf32>, %C: memref<10x10xf32>) -> memref<10x10xf32> {
%c0 = arith.constant 0 : index