Merge remote-tracking branch 'origin/topic/timw/structure-packing'

During merge, changed a bit of how Frame OffsetMap
assignments/contruction were handled to keep parity with old version.

* origin/topic/timw/structure-packing:
  Lazy-initalize some of the fields in Frame to reduce the size of all Frames when they're not used
  Set InternalHashTag to a uint16_t so CompositeHash doesn't have a gap in it.
  Mark constants in List constexpr so they don't actually take up space in created objects
  Reorder some class variables to fill in gaps in structure packing
This commit is contained in:
Jon Siwek 2020-04-08 13:57:44 -07:00
commit 5fe2a57356
18 changed files with 95 additions and 67 deletions

View file

@ -122,6 +122,8 @@ protected:
const char* name;
IDScope scope;
bool is_export;
bool infer_return_type;
bool weak_ref;
IntrusivePtr<BroType> type;
bool is_const, is_enum_const, is_type, is_option;
int offset;
@ -130,6 +132,4 @@ protected:
// contains list of functions that are called when an option changes
std::multimap<int, IntrusivePtr<Func>> option_handlers;
bool infer_return_type;
bool weak_ref;
};