This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [lto][patch] Remove after_inlining flag
>> No, replacing it by 1 will lead to divergence on -g and ICEs on weird
>> C++ testcases. Replacing it with 0 will lead to missed optimizations.
>> Just keep it 1 until after last inlining happens.
>
> For lto I think the best option now is to take the missed optimizations.
Replacing with 0 produced a regression. Compiling
struct S { ~S(); };
void bar();
void foo()
{
S s;
bar();
}
produces a segmentation fault:
#0 make_label_edge (edge_cache=0x0, src=0x7ffff757ce40, label=0x0,
flags=14) at ../../repo/gcc/cfgbuild.c:188
#1 0x0000000000b84c13 in rtl_make_eh_edge (edge_cache=0x0,
src=0x7ffff757ce40, insn=<value optimized out>) at
../../repo/gcc/cfgbuild.c:212
#2 0x000000000065f12f in finish_eh_generation () at
../../repo/gcc/except.c:2095
#3 0x000000000065f4c3 in rest_of_handle_eh () at ../../repo/gcc/except.c:3953
#4 0x000000000075e3e8 in execute_one_pass (pass=0x10bf060) at
../../repo/gcc/passes.c:1279
#5 0x000000000075e625 in execute_pass_list (pass=0x10bf060) at
../../repo/gcc/passes.c:1327
#6 0x000000000075e63d in execute_pass_list (pass=0x11405e0) at
../../repo/gcc/passes.c:1328
#7 0x0000000000852bbc in tree_rest_of_compilation
(fndecl=0x7ffff7574700) at ../../repo/gcc/tree-optimize.c:416
#8 0x00000000009c89c4 in cgraph_expand_function (node=0x7ffff7574800)
at ../../repo/gcc/cgraphunit.c:1038
#9 0x00000000009c8bd4 in cgraph_output_in_order () at
../../repo/gcc/cgraphunit.c:1186
#10 0x00000000009ca93d in cgraph_optimize () at ../../repo/gcc/cgraphunit.c:1297
#11 0x00000000004a09a5 in cp_write_global_declarations () at
../../repo/gcc/cp/decl2.c:3615
#12 0x0000000000804161 in toplev_main (argc=<value optimized out>,
argv=<value optimized out>) at ../../repo/gcc/toplev.c:979
#13 0x00007ffff761c1c4 in __libc_start_main () from /lib/libc.so.6
#14 0x0000000000404369 in _start ()
Cheers,
--
Rafael Avila de Espindola
Google | Gordon House | Barrow Street | Dublin 4 | Ireland
Registered in Dublin, Ireland | Registration Number: 368047