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)