[PATCH] D104944: [IR] remove assert since always_inline can appear on CallBase
Nick Desaulniers via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Jun 25 15:06:37 PDT 2021
nickdesaulniers planned changes to this revision.
nickdesaulniers added a comment.
I've added optimization remark tests locally; inlining is failing due to:
remark: <unknown>:0:0: ssp not inlined into nossp because it should never be inlined (cost=never): stack protected callee but caller requested no stack protector
remark: <unknown>:0:0: ssp not inlined into nossp_alwaysinline because it should never be inlined (cost=never): stack protected callee but caller requested no stack protector
remark: <unknown>:0:0: ssp has uninlinable pattern (dynamic alloca) and cost is not fully computed
remark: <unknown>:0:0: ssp not inlined into nossp_caller because it should never be inlined (cost=never): dynamic alloca
remark: <unknown>:0:0: nossp has uninlinable pattern (dynamic alloca) and cost is not fully computed
remark: <unknown>:0:0: nossp not inlined into ssp2 because it should never be inlined (cost=never): dynamic alloca
the dynamic allocas mean this test, as introduced in D91816 <https://reviews.llvm.org/D91816>, might not be testing the right thing. We were getting the right results, but for the wrong reasons. Let me attempt to fix that first, then revisit this. It's confusing to me at the moment because the dynamic allocas are the whole point of having stack protectors, and we can and do inline such code, so it's not initially clear to my why inlining would fail due to that, at least with the tests as written.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D104944/new/
https://reviews.llvm.org/D104944
More information about the llvm-commits
mailing list