diff --git a/flang/lib/Frontend/FrontendActions.cpp b/flang/lib/Frontend/FrontendActions.cpp index 64641b737f715..a54d7ff25eab1 100644 --- a/flang/lib/Frontend/FrontendActions.cpp +++ b/flang/lib/Frontend/FrontendActions.cpp @@ -779,7 +779,7 @@ void CodeGenAction::executeAction() { llvmModule->setDataLayout(tm->createDataLayout()); // Run LLVM's middle-end (i.e. the optimizer). - runOptimizationPipeline(*os); + runOptimizationPipeline(ci.isOutputStreamNull() ? *os : ci.getOutputStream()); if (action == BackendActionTy::Backend_EmitLL) { llvmModule->print(ci.isOutputStreamNull() ? *os : ci.getOutputStream(),