[clang] [flang] [flang] Enable alias tags pass by default (PR #73111)

Andrzej WarzyƄski via cfe-commits cfe-commits at lists.llvm.org
Thu Nov 23 02:56:54 PST 2023


================
@@ -142,6 +142,26 @@ void Flang::addCodegenOptions(const ArgList &Args,
   if (shouldLoopVersion(Args))
     CmdArgs.push_back("-fversion-loops-for-stride");
 
+  Arg *aliasAnalysis = Args.getLastArg(options::OPT_falias_analysis,
+                                       options::OPT_fno_alias_analysis);
+  Arg *optLevel =
+      Args.getLastArg(options::OPT_Ofast, options::OPT_O, options::OPT_O4);
----------------
banach-space wrote:

> But I want there to still be a separate flag available to override this default behavior.

That's fine, but then one has to decide whether `-f{no}-alias-analysis` overrides `-O{n}` or not? I think that "explicit" request from a user should always take precedence. This leads to (pseudo code):
```
opts.AliasAnalysis = 0;
if (opt level requiring alias analysis)
  opts.AliasAnalysis  = 1;

// User request takes precedence when it comes to alias analysis.
if (-falias-analysis or -fno-alias-analysis) then
  "do whatever the user requested"
```

Separately, could you check what Clang does and make sure that that would be consistent?

https://github.com/llvm/llvm-project/pull/73111


More information about the cfe-commits mailing list