This converts e.g. from: test.c:8:3: note: === analyzing loop === test.c:8:3: note: === analyze_loop_nest === test.c:8:3: note: === vect_analyze_loop_form === test.c:8:3: note: === get_loop_niters === test.c:8:3: note: symbolic number of iterations is (unsigned int) n_9(D) test.c:8:3: note: not vectorized: loop contains function calls or data references that cannot be analyzed test.c:8:3: note: vectorized 0 loops in function
to: test.c:8:3: note: === analyzing loop === test.c:8:3: note: === analyze_loop_nest === test.c:8:3: note: === vect_analyze_loop_form === test.c:8:3: note: === get_loop_niters === test.c:8:3: note: symbolic number of iterations is (unsigned int) n_9(D) test.c:8:3: note: not vectorized: loop contains function calls or data references that cannot be analyzed test.c:8:3: note: vectorized 0 loops in function showing the nesting of the optimization analysis and where each message is being emitted from within it (this is of more use as the number of messages and the nesting depth increases) gcc/ChangeLog: * optinfo-emit-fopt-info.cc (emit_optinfo_via_fopt_info): Use indentation to show nesting. --- gcc/optinfo-emit-fopt-info.cc | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/gcc/optinfo-emit-fopt-info.cc b/gcc/optinfo-emit-fopt-info.cc index b01a301..842681f 100644 --- a/gcc/optinfo-emit-fopt-info.cc +++ b/gcc/optinfo-emit-fopt-info.cc @@ -58,7 +58,13 @@ emit_optinfo_via_fopt_info (const optinfo *optinfo) if (optinfo->details_p ()) flags |= TDF_DETAILS; + /* Source location and "note: ". */ dump_loc (flags, optinfo->get_location_t ()); + + /* Indentation to show scope nesting. */ + dump_printf (flags, "%*s", get_optinfo_scope_depth (), ""); + + /* The text itself. */ for (unsigned i = 0; i < optinfo->num_items (); i++) { const optinfo_item *item = optinfo->get_item (i); -- 1.8.5.3