7 #ifndef JLM_LLVM_CALL_SUMMARY_HPP
8 #define JLM_LLVM_CALL_SUMMARY_HPP
34 std::vector<rvsdg::SimpleNode *> directCalls,
35 std::vector<rvsdg::Input *> otherUsers)
174 static std::unique_ptr<CallSummary>
177 std::vector<rvsdg::SimpleNode *> directCalls,
178 std::vector<rvsdg::Input *> otherUsers)
180 return std::make_unique<CallSummary>(
182 std::move(directCalls),
183 std::move(otherUsers));
bool IsDead() const noexcept
size_t NumOtherUsers() const noexcept
rvsdg::GraphExport * RvsdgExport_
size_t NumDirectCalls() const noexcept
static std::unique_ptr< CallSummary > Create(rvsdg::GraphExport *rvsdgExport, std::vector< rvsdg::SimpleNode * > directCalls, std::vector< rvsdg::Input * > otherUsers)
std::vector< rvsdg::SimpleNode * > DirectCalls_
util::IteratorRange< std::vector< rvsdg::SimpleNode * >::const_iterator > DirectCallsConstRange
rvsdg::GraphExport * GetRvsdgExport() const noexcept
bool IsOnlyExported() const noexcept
OtherUsersConstRange OtherUsers() const noexcept
DirectCallsConstRange DirectCalls() const noexcept
bool HasOnlyDirectCalls() const noexcept
bool HasOnlyOtherUsages() const noexcept
CallSummary(rvsdg::GraphExport *rvsdgExport, std::vector< rvsdg::SimpleNode * > directCalls, std::vector< rvsdg::Input * > otherUsers)
util::IteratorRange< std::vector< rvsdg::Input * >::const_iterator > OtherUsersConstRange
std::vector< rvsdg::Input * > OtherUsers_
bool HasNoOtherUsages() const noexcept
bool IsExported() const noexcept
Global memory state passed between functions.
CallSummary ComputeCallSummary(const rvsdg::LambdaNode &lambdaNode)