================
@@ -783,6 +783,28 @@ void tools::addLTOOptions(const ToolChain &ToolChain, 
const ArgList &Args,
                                          "-generate-arange-section"));
   }
 
+  // Pass vector library arguments to LTO.
+  Arg *ArgVecLib = Args.getLastArg(options::OPT_fveclib);
+  if (ArgVecLib && ArgVecLib->getNumValues() == 1) {
+    // Map the vector library names from clang front-end to opt front-end. The
+    // values are taken from the TargetLibraryInfo class command line options.
+    std::optional<StringRef> OptVal =
+        llvm::StringSwitch<std::optional<StringRef>>(ArgVecLib->getValue())
----------------
mgabka wrote:

the TLI belongs to llvm world, while clang driver from what I can see is only 
linked with following llvm components:
set(LLVM_LINK_COMPONENTS
  BinaryFormat
  MC
  Object
  Option
  ProfileData
  Support
  TargetParser
  WindowsDriver
  )
so I don't think it is possible to do it.

Unfortunately at the early stage when the  tools::addLTOOptions function is 
called the CodeGenOptions are not even created, perhaps we could have a 
function defined which does the strings checking in 
include/llvm/Analysis/TargetLibraryInfo.h and include it in  the 
CommonArgs.cpp? a least everything would be in one place? what do you think 
@david-arm ?

https://github.com/llvm/llvm-project/pull/78749
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to