greater ZAM optimization of inlined function calls

This commit is contained in:
Vern Paxson 2023-11-06 07:03:17 -08:00 committed by Arne Welzel
parent e3b75ac391
commit b489cfc508
13 changed files with 130 additions and 95 deletions

View file

@ -13,6 +13,7 @@
namespace zeek::detail {
class FuncInfo;
class ProfileFunc;
class Inliner {
public:
@ -43,8 +44,9 @@ protected:
// the full set of scripts.
std::vector<FuncInfo>& funcs;
// Functions that we've determined to be suitable for inlining.
std::unordered_set<const Func*> inline_ables;
// Functions that we've determined to be suitable for inlining, and
// their associated profiles.
std::unordered_map<const Func*, const ProfileFunc*> inline_ables;
// Functions that we inlined.
std::unordered_set<const Func*> did_inline;