[PATCH] D93946: [FuncAttrs] Infer noreturn
Markus Lavin via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Jan 13 06:14:33 PST 2021
markus added a comment.
Not terribly important but isn't
> A function is noreturn if all blocks terminating with a ReturnInst contain a call to a noreturn function.
slightly in conflict with the Lint pass containing the following "Unusual" warning?
void Lint::visitReturnInst(ReturnInst &I) {
Function *F = I.getParent()->getParent();
Assert(!F->doesNotReturn(),
"Unusual: Return statement in function with noreturn attribute", &I);
if (Value *V = I.getReturnValue()) {
Value *Obj = findValue(V, /*OffsetOk=*/true);
Assert(!isa<AllocaInst>(Obj), "Unusual: Returning alloca value", &I);
}
}
Well I guess "Unusual" is not really a warning but still it kind of indicates that something is off. So maybe that Lint printout should be removed or updated somehow?
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D93946/new/
https://reviews.llvm.org/D93946
More information about the llvm-commits
mailing list