https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109539

--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> ---
The issue is almost certainly the cost of pointers_related_p

Samples: 3M of event 'cycles', Event count (approx.): 3573086788171             
  Children      Self       Samples  Command  Shared Object     Symbol           
-   93.15%     0.80%         25898  cc1plus  cc1plus           [.] (anonymous
namespace)::pointers_related_p     #
   - 92.35% (anonymous namespace)::pointers_related_p                          
                                 #
      - 92.30% (anonymous namespace)::pointers_related_p                       
                                 #
         - 92.21% (anonymous namespace)::pointers_related_p                    
                                 #
            - 92.12% (anonymous namespace)::pointers_related_p                 
                                 #
               - 92.02% (anonymous namespace)::pointers_related_p              
                                 #
                  - 91.93% (anonymous namespace)::pointers_related_p           
                                 #
                     - 91.84% (anonymous namespace)::pointers_related_p        
                                 #
                        - 91.75% (anonymous namespace)::pointers_related_p     
                                 #
                           - 91.66% (anonymous namespace)::pointers_related_p  
                                 #
                              - 91.57% (anonymous
namespace)::pointers_related_p                                 #
                                 - 91.48% (anonymous
namespace)::pointers_related_p                              #
                                    - 91.39% (anonymous
namespace)::pointers_related_p                           #
                                       - 87.34% (anonymous
namespace)::pointers_related_p                        #
                                          - 62.30% (anonymous
namespace)::pointers_related_p                     #
                                             - 44.52% pointer_query::get_ref   
                                 #
                                                - 44.51% compute_objsize       
                                 #
                                                   + 15.03%
access_ref::size_remaining                           #
                                                   + 14.49% wide_int_to_tree   
                                 #
                                                   + 4.91%
generic_wide_int<fixed_wide_int_storage<128> >::operat#
                                                   + 4.57% operator<
<generic_wide_int<fixed_wide_int_storage<128#
                                                   + 2.41% poly_int<1u,
generic_wide_int<wide_int_ref_storage<fal#
                                                   + 1.15%
pointer_query::~pointer_query                         #
                                                     0.80%
pointer_query::pointer_query                          #
                                                     0.78% compute_objsize_r   
                                 #
                                             - 14.08% (anonymous
namespace)::pointers_related_p                  #
                                                + 6.14% access_ref::access_ref 
                                 #
                                                + 4.53% pointer_query::get_ref 
                                 #
                                                + 2.07% ptr_derefs_may_alias_p 
                                 #
                                             + 3.70% access_ref::access_ref    
                                 #
                                          + 25.03% pointer_query::get_ref      
                                 #
                                       + 4.04% pointer_query::get_ref

Reply via email to