hpcc-systems/HPCC-Platform — pull request #2874 by ghalliday (2012-07-18 11:38:59+00:00)
Title: Reducing eclcc memory consumption 

* Use template classes for implementing the linkcounts.
This avoids having an extra VMT for CInterface - it can reuse the
vmt of the interface.

* Change attributes so they are stored as linked list of entries
instead of an array. Reduces size if an expression has no attributes
and allows firther changes later.

* Don't create an extra attribute for unadorned attribute

* Simplify format of serialized form

* Use an attribute to store location independent expression

* Optimize the representation of referenced tables
Reduce from 24 bytes to 12 bytes in 32bit, 32 to 16 in 64bit
Optimize the storage of a single table

* Clean up symbol code

* Improve statistics for opcode counts

Signed-off-by: Gavin Halliday