If all call sites are in norecurse functions we can derive norecurse
as the ReversePostOrderFunctionAttrsPass does. This should make
ReversePostOrderFunctionAttrsLegacyPass obsolete once the Attributor is
enabled.
Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Unit tests: unknown.
clang-tidy: fail. Please fix clang-tidy findings.
clang-format: pass.
Build artifacts: diff.json, clang-tidy.txt, clang-format.patch, CMakeCache.txt, console-log.txt
llvm/lib/Transforms/IPO/Attributor.cpp | ||
---|---|---|
2107 | Don't we need to return? |
llvm/lib/Transforms/IPO/Attributor.cpp | ||
---|---|---|
2107 | We return in the next line either way. If the checkForAllCallSites returned true we can *at least* assume noreturn. Or did I misunderstand your question? |
llvm/lib/Transforms/IPO/Attributor.cpp | ||
---|---|---|
2107 | I mean we need to return ChangeStatus::CHANGED here, isn't it? |
llvm/lib/Transforms/IPO/Attributor.cpp | ||
---|---|---|
2107 | The assumed state didn't change so I returned UNCHANGED. This is what indicateOptimisticFixpoint returns as well. So far I used the changestatus (only) for the assumed not the known state. I'm not convinced it is useful to indicate "changes" in the known state alone, though I'm open to arguments here. |
llvm/lib/Transforms/IPO/Attributor.cpp | ||
---|---|---|
2107 | Oh, I misunderstood that indicateOptimistic returns Changed. Thanks. I agree we shouldn't use the changestatus for known state. |
Don't we need to return?