From: David Malcolm Date: Tue, 15 Mar 2022 21:55:14 +0000 (-0400) Subject: analyzer: presize m_cluster_map in store copy ctor X-Git-Tag: upstream/12.2.0~1039 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a58e342d8869c571476c76d0ed95488adbde26bd;p=platform%2Fupstream%2Fgcc.git analyzer: presize m_cluster_map in store copy ctor Testing cc1 on pr93032-mztools-unsigned-char.c Benchmark #1: (without patch) Time (mean ± σ): 338.8 ms ± 13.6 ms [User: 323.2 ms, System: 14.2 ms] Range (min … max): 326.7 ms … 363.1 ms 10 runs Benchmark #2: (with patch) Time (mean ± σ): 332.3 ms ± 12.8 ms [User: 316.6 ms, System: 14.3 ms] Range (min … max): 322.5 ms … 357.4 ms 10 runs Summary ./cc1.new ran 1.02 ± 0.06 times faster than ./cc1.old gcc/analyzer/ChangeLog: * store.cc (store::store): Presize m_cluster_map. Signed-off-by: David Malcolm --- diff --git a/gcc/analyzer/store.cc b/gcc/analyzer/store.cc index 58df7aa..ec11433 100644 --- a/gcc/analyzer/store.cc +++ b/gcc/analyzer/store.cc @@ -2032,7 +2032,8 @@ store::store () /* store's copy ctor. */ store::store (const store &other) -: m_called_unknown_fn (other.m_called_unknown_fn) +: m_cluster_map (other.m_cluster_map.elements ()), + m_called_unknown_fn (other.m_called_unknown_fn) { for (cluster_map_t::iterator iter = other.m_cluster_map.begin (); iter != other.m_cluster_map.end ();