Allocate per-edge BindingEnvs lazily.
authorNico Weber <nicolasweber@gmx.de>
Tue, 11 Feb 2014 20:19:01 +0000 (12:19 -0800)
committerNico Weber <nicolasweber@gmx.de>
Tue, 11 Feb 2014 20:24:32 +0000 (12:24 -0800)
commitdd8c1d84699bb6b45ffa1a529d53fe2273c8b427
treeaf50cf5018ce54c3e3b97d9102d71b332dd4196e
parent84986af6fdeae3f649f2bf884b20f644bc370e48
Allocate per-edge BindingEnvs lazily.

In chrome, only 2000 of 22000 build edges have bindings.  A BindingEnv is
64 bytes, so allocating these only when needed saves a bit over 1 MB of
memory.  Since env chains are shorter for lookups, builds also become a
tiny bit faster.
src/manifest_parser.cc