[llvm] [FunctionAttrs] Infer `errnomem` location when accessing errno (PR #129067)

Nikita Popov via llvm-commits llvm-commits at lists.llvm.org
Tue Oct 21 03:06:20 PDT 2025


================
@@ -136,6 +136,16 @@ static void addLocAccess(MemoryEffects &ME, const MemoryLocation &Loc,
     ME |= MemoryEffects::argMemOnly(MR);
     return;
   }
+  if (auto *CI = dyn_cast<CallInst>(UO)) {
+    if (auto *Callee = CI->getCalledFunction(); Callee && Callee->hasName()) {
+      static constexpr auto ErrnoFnNames = {"__errno_location", "_errno",
+                                            "__errno", "___errno"};
----------------
nikic wrote:

This needs to go through TLI.

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


More information about the llvm-commits mailing list