Re: [COMMITTED] Reduce startup costs for Value_Range.

2024-05-02 Thread Ian Lance Taylor
On Wed, May 1, 2024 at 7:50 PM Andrew Pinski wrote: > > On Wed, May 1, 2024 at 7:40 PM Ian Lance Taylor wrote: > > > > On Wed, May 1, 2024 at 12:43 AM Aldy Hernandez wrote: > > > > > > gcc/ChangeLog: > > > > > > * ipa-fnsummary.cc (evaluate_properties_for_edge): Initialize > > > Value_R

Re: [COMMITTED] Reduce startup costs for Value_Range.

2024-05-01 Thread Andrew Pinski
On Wed, May 1, 2024 at 7:40 PM Ian Lance Taylor wrote: > > On Wed, May 1, 2024 at 12:43 AM Aldy Hernandez wrote: > > > > gcc/ChangeLog: > > > > * ipa-fnsummary.cc (evaluate_properties_for_edge): Initialize > > Value_Range's. > > * value-range.h (class Value_Range): Add a buffer a

Re: [COMMITTED] Reduce startup costs for Value_Range.

2024-05-01 Thread Ian Lance Taylor
On Wed, May 1, 2024 at 12:43 AM Aldy Hernandez wrote: > > gcc/ChangeLog: > > * ipa-fnsummary.cc (evaluate_properties_for_edge): Initialize > Value_Range's. > * value-range.h (class Value_Range): Add a buffer and remove > m_irange and m_frange. > (Value_Range::Value

[COMMITTED] Reduce startup costs for Value_Range.

2024-05-01 Thread Aldy Hernandez
Value_Range is our polymorphic temporary that can hold any range. It is used for type agnostic code where it isn't known ahead of time, what the type of the range will be (irange, france, etc). Currently, there is a temporary of each type in the object, which means we need to construct each range