http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56671



--- Comment #1 from Markus Trippelsdorf <markus at trippelsdorf dot de> 
2013-03-21 08:31:57 UTC ---

Created attachment 29703

  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=29703

callgraph



Looks like a bug in constant expression handling.



perf shows:

 15.51%   cc1plus  cc1plus            [.] gt_ggc_mx_lang_tree_node(void*)

 11.14%   cc1plus  cc1plus            [.] walk_tree_1(tree_node**, tree_node*

(*)(tree_node**, int*, void*), void*, pointer_set_t*, tree_node*

(*)(tree_node**, int*, tree_no

  9.54%   cc1plus  cc1plus            [.] htab_expand.1557810

  7.28%   cc1plus  cc1plus            [.] ggc_set_mark(void const*)

  6.35%   cc1plus  cc1plus            [.] lookup_page_table_entry(void const*)

[clone .218759]

  6.32%   cc1plus  cc1plus            [.] build_int_cst(tree_node*, long)

  5.07%   cc1plus  [kernel.kallsyms]  [k] clear_page_c

  3.60%   cc1plus  cc1plus            [.]

initializer_constant_valid_p_1(tree_node*, tree_node*, tree_node**) [clone

.1222026]

  3.46%   cc1plus  cc1plus            [.] mostly_copy_tree_r(tree_node**, int*,

void*) [clone .459380]

  2.57%   cc1plus  cc1plus            [.] gt_ggc_mx(constructor_elt_d&)

  2.21%   cc1plus  cc1plus            [.] vec<constructor_elt_d, va_gc,

vl_embed>::copy() const [clone .local.823]

  1.97%   cc1plus  cc1plus            [.] int_cst_hash_hash(void const*) [clone

.1202876]

  1.94%   cc1plus  cc1plus            [.] cxx_eval_vec_init_1(constexpr_call

const*, tree_node*, tree_node*, bool, bool, bool, bool*, bool*) [clone

.109131.20812] 





cxx_eval_outermost_constant_expr -> cxx_eval_constant_expression ->

-> cxx_eval_vec_init_1 -> build_int_cst 

(see attached callgraph)

Reply via email to