[Mlir-commits] [llvm] [mlir] [InferAttrs] Mark errnomem-setting libcalls as such (PR #124742)
Eli Friedman
llvmlistbot at llvm.org
Wed Feb 12 14:45:14 PST 2025
================
@@ -604,11 +652,19 @@ bool llvm::inferNonMandatoryLibFuncAttrs(Function &F,
break;
case LibFunc_rmdir:
case LibFunc_remove:
+ Changed |= setRetAndArgsNoUndef(F);
+ Changed |= setDoesNotThrow(F);
+ Changed |= setDoesNotCapture(F, 0);
+ Changed |= setOnlyReadsMemory(F, 0);
+ Changed |=
+ setOnlyAccessesInaccessibleMemOrArgMemOrErrnoMem(F, ModRefInfo::Ref);
+ break;
case LibFunc_realpath:
Changed |= setRetAndArgsNoUndef(F);
Changed |= setDoesNotThrow(F);
Changed |= setDoesNotCapture(F, 0);
Changed |= setOnlyReadsMemory(F, 0);
+ Changed |= setOnlyAccessesArgMemOrErrnoMem(F);
----------------
efriedma-quic wrote:
realpath accesses the filesystem?
https://github.com/llvm/llvm-project/pull/124742
More information about the Mlir-commits
mailing list