[PATCH] D73951: [Clang] [Driver]Add logic to search for flang frontend

Andrzej Warzynski via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Mon May 4 03:42:06 PDT 2020


awarzynski added a comment.

@CarolineConcatto thank you for the updates!

- It looks like you accidentally pushed two commits in one patch :) Could you please squash and resubmit? (this should clean-up the diff). Ta!
- Perhaps  `CFCGenericFlangName` instead of `GenericFortranFE`? This would better correspond to the new flag and be consistent with https://github.com/llvm/llvm-project/blob/42a56bf63f699a620a57c34474510d9937ebf715/clang/lib/Driver/ToolChains/Gnu.cpp#L183.

Naming is hard! Otherwise, this is ready to land IMO.



================
Comment at: clang/include/clang/Driver/Driver.h:222
   /// Name to use when invoking flang.
-  std::string FFCGenericFortranName;
+  std::string GenericFortranFE;
 
----------------
`CFCGenericFlangName`?


================
Comment at: clang/include/clang/Driver/Driver.h:317
   /// Name to use when invoking flang.
-  const std::string &getFFCGenericFortranName() const { return FFCGenericFortranName; }
+  const std::string &getGenericFortranFE() const { return GenericFortranFE; }
 
----------------
`getCFCGenericFlangName`?


================
Comment at: clang/include/clang/Driver/Options.td:268
+def cfc_flang_name : Separate<["-"], "cfc-flang-name">, InternalDriverOpt,
+  HelpText<"Name for a custom frontend compiler(cfc) for flang">;
 
----------------
`custom fortran compiler` instead, right? IIUC:
* this flag is to specify _custom fortran compiler_ (`cfc`)
* we add `flang_name`at the end  because it can be interpreted as flang's alternative name and we want to be consistent with `ccc_gcc_name`


================
Comment at: clang/lib/Driver/Driver.cpp:1092
 
-  // Extract -ffc args.
-  if (const Arg *A = Args.getLastArg(options::OPT_fcc_fortran_name))
-    FFCGenericFortranName = A->getValue();
+  // Extract -cfc args.
+  if (const Arg *A = Args.getLastArg(options::OPT_cfc_flang_name))
----------------
There's only one, called `cfc-flang-name` ;-)


================
Comment at: clang/test/Driver/flang/custom_frontend_flang.f90:5
+! The flag has preference over "flang" frontend.
+! Therefore the driver invokes the FE given by the flag.
+
----------------
`FE` is a bit enigmatic. Perhaphs `... invokes the custom fortran compiler given by ...`?


================
Comment at: clang/test/Driver/flang/custom_frontend_flang.f90:9
+
+! The invocations should begin with <test-file-name>.tmp1 -fc1.
+! CHECK: "{{[^"]*}}alternative_fortran_frontend" "-fc1"
----------------
This comment is out of date :)


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D73951/new/

https://reviews.llvm.org/D73951





More information about the cfe-commits mailing list