42 markAllAnalysesPreserved();
44 if (!llvm::isa<mlir::ModuleOp>(getOperation())) {
45 const char *msg =
"IntervalAnalysisPrinterPass error: should be run on ModuleOp!";
46 getOperation()->emitError(msg).report();
47 llvm::report_fatal_error(msg);
50 auto &mia = getAnalysis<ModuleIntervalAnalysis>();
53 auto am = getAnalysisManager();
54 mia.ensureAnalysisRun(am);
56 for (
auto &[s, si] : mia.getCurrentResults()) {
64 mlir::succeeded(fullName),
65 "could not resolve fully qualified name of struct " + mlir::Twine(structDef.getName())
67 os << fullName.value() <<
' ';