[clang] [llvm] [Clang][InstCombine] Recognise div/ldiv/lldiv libcalls (PR #215868)

Matt Arsenault via cfe-commits cfe-commits at lists.llvm.org
Thu Aug 13 14:17:39 PDT 2026


================
@@ -923,7 +923,13 @@ static void parseAnalyzerConfigs(AnalyzerOptions &AnOpts,
 static void getAllNoBuiltinFuncValues(ArgList &Args,
                                       std::vector<std::string> &Funcs) {
   std::vector<std::string> Values = Args.getAllArgValues(OPT_fno_builtin_);
-  auto BuiltinEnd = llvm::partition(Values, Builtin::Context::isBuiltinFunc);
+  auto IsBuiltinFunc = [](StringRef Name) {
+    // These libcalls have target-specific aggregate return types that cannot be
+    // represented by Clang's builtin type encoding.
+    return Builtin::Context::isBuiltinFunc(Name) || Name == "div" ||
+           Name == "ldiv" || Name == "lldiv";
----------------
arsenm wrote:

This shouldn't be special casing specific function names 

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


More information about the cfe-commits mailing list