summaryrefslogtreecommitdiff
path: root/flang/lib/Optimizer/Passes/Pipelines.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'flang/lib/Optimizer/Passes/Pipelines.cpp')
-rw-r--r--flang/lib/Optimizer/Passes/Pipelines.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/flang/lib/Optimizer/Passes/Pipelines.cpp b/flang/lib/Optimizer/Passes/Pipelines.cpp
index 98f947a1f635..7c2777baebef 100644
--- a/flang/lib/Optimizer/Passes/Pipelines.cpp
+++ b/flang/lib/Optimizer/Passes/Pipelines.cpp
@@ -14,7 +14,7 @@
/// Force setting the no-alias attribute on fuction arguments when possible.
static llvm::cl::opt<bool> forceNoAlias("force-no-alias", llvm::cl::Hidden,
- llvm::cl::init(false));
+ llvm::cl::init(true));
namespace fir {
@@ -217,9 +217,6 @@ void createDefaultFIROptimizerPassPipeline(mlir::PassManager &pm,
pm.addPass(fir::createSimplifyFIROperations(
{/*preferInlineImplementation=*/pc.OptLevel.isOptimizingForSpeed()}));
- if (pc.AliasAnalysis && !disableFirAliasTags && !useOldAliasTags)
- pm.addPass(fir::createAddAliasTags());
-
addNestedPassToAllTopLevelOperations<PassConstructor>(
pm, fir::createStackReclaim);
// convert control flow to CFG form
@@ -345,6 +342,9 @@ void createDefaultFIRCodeGenPassPipeline(mlir::PassManager &pm,
MLIRToLLVMPassPipelineConfig config,
llvm::StringRef inputFilename) {
fir::addBoxedProcedurePass(pm);
+ if (config.OptLevel.isOptimizingForSpeed() && config.AliasAnalysis &&
+ !disableFirAliasTags && !useOldAliasTags)
+ pm.addPass(fir::createAddAliasTags());
addNestedPassToAllTopLevelOperations<PassConstructor>(
pm, fir::createAbstractResultOpt);
addPassToGPUModuleOperations<PassConstructor>(pm,