On Mon, Jun 3, 2013 at 1:05 AM, Richard Biener <rguent...@suse.de> wrote: > On Fri, 31 May 2013, Teresa Johnson wrote: > >> This patch changes the -fopt-info default to optimized instead of all, >> since the latter is extremely verbose. This reduced the -fopt-info output by >> over 75% in at least one case, since the vectorizer has many messages under >> MSG_NOTE (and that should grow as more passes are converted to the new dump >> infrastructure). The default now emits high-level optimization success info >> (currently for unrolling, inlining and vectorization). >> >> Also changed which vectorization summary messages are emitted under >> -fopt-info(=optimized), to be more consistent with the format of the >> optimization summary messages emitted by the unroller and inliner, >> and fixed the loop vectorization summary message to use dump_printf_loc >> instead of manually emitting the location info. >> >> Bootstrapped and tested on x86-64-unknown-linux-gnu. Ok for trunk? >> >> 2013-05-31 Teresa Johnson <tejohn...@google.com> >> >> * dumpfile.c (opt_info_switch_p): Change -fopt-info >> default to -fopt-info=optimized instead of all. >> * doc/invoke.texi: Ditto. >> * tree-vectorizer.c (vectorize_loops): Emit loop vectorization >> success under MSG_ALL, and use dump_printf_loc. >> (execute_vect_slp): Emit BB vectorization success under >> MSG_OPTIMIZED_LOCATIONS. >> * tree-vect-slp.c (vect_make_slp_decision): Ditto. >> (vect_slp_transform_bb): Change MSG_OPTIMIZED_LOCATIONS >> to MSG_NOTE. >> * tree-vect-loop.c (vect_transform_loop): Ditto. >> >> Index: tree-vect-loop.c >> =================================================================== >> --- tree-vect-loop.c (revision 199423) >> +++ tree-vect-loop.c (working copy) >> @@ -5801,7 +5801,7 @@ vect_transform_loop (loop_vec_info loop_vinfo) >> >> if (dump_enabled_p ()) >> { >> - dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, vect_location, >> + dump_printf_loc (MSG_NOTE, vect_location, >> "LOOP VECTORIZED\n"); >> if (loop->inner) >> dump_printf_loc (MSG_NOTE, vect_location, >> Index: dumpfile.c >> =================================================================== >> --- dumpfile.c (revision 199423) >> +++ dumpfile.c (working copy) >> @@ -866,7 +866,7 @@ opt_info_switch_p (const char *arg) >> >> file_seen = xstrdup (filename); >> if (!flags) >> - flags = MSG_ALL; >> + flags = MSG_OPTIMIZED_LOCATIONS; >> if (!optgroup_flags) >> optgroup_flags = OPTGROUP_ALL; >> >> Index: tree-vectorizer.c >> =================================================================== >> --- tree-vectorizer.c (revision 199423) >> +++ tree-vectorizer.c (working copy) >> @@ -118,8 +118,7 @@ vectorize_loops (void) >> >> if (LOCATION_LOCUS (vect_location) != UNKNOWN_LOC >> && dump_enabled_p ()) >> - dump_printf (MSG_NOTE, "\n\nVectorizing loop at %s:%d\n", >> - LOC_FILE (vect_location), LOC_LINE (vect_location)); >> + dump_printf_loc (MSG_ALL, vect_location, "Vectorized loop\n"); > > MSG_ALL looks wrong if we are looking for unoptimized locations > only, no? I think you want MSG_OPTIMIZED_LOCATIONS here.
Ok, fixed. > >> vect_transform_loop (loop_vinfo); >> num_vectorized_loops++; >> } >> @@ -179,7 +178,7 @@ execute_vect_slp (void) >> { >> vect_slp_transform_bb (bb); >> if (dump_enabled_p ()) >> - dump_printf_loc (MSG_NOTE, vect_location, >> + dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, vect_location, >> "basic block vectorized using SLP\n"); > > Please make the message consistent with the loop one. The loop one > says "Vectorized loop" (I think the caps 'V' is not according to > our diagnostic policies, it should be lower-case), the basic-block > one "basic block vectorized using SLP" which shouldn't confuse the > user about "SLP" and say "vectorized basic-block" instead. > > Yes, that may require you to fiddle with testcases that scan for > these ... As suggested, I changed the above to "Vectorized basic-block" (kept both success notes with leading capital to be consistent with the loop unroller MSG_OPTIMIZED_LOCATIONS messages). Updated test cases with the new message. > >> } >> } >> Index: doc/invoke.texi >> =================================================================== >> --- doc/invoke.texi (revision 199423) >> +++ doc/invoke.texi (working copy) >> @@ -6172,7 +6172,7 @@ Controls optimization dumps from various optimizat >> @samp{-@var{options}} form is used, @var{options} is a list of >> @samp{-} separated options to select the dump details and >> optimizations. If @var{options} is not specified, it defaults to >> -@option{all} for details and @option{optall} for optimization >> +@option{optimized} for details and @option{optall} for optimization >> groups. If the @var{filename} is not specified, it defaults to >> @file{stderr}. Note that the output @var{filename} will be overwritten >> in case of multiple translation units. If a combined output from >> Index: tree-vect-slp.c >> =================================================================== >> --- tree-vect-slp.c (revision 199423) >> +++ tree-vect-slp.c (working copy) >> @@ -1698,8 +1698,8 @@ vect_make_slp_decision (loop_vec_info loop_vinfo) >> LOOP_VINFO_SLP_UNROLLING_FACTOR (loop_vinfo) = unrolling_factor; >> >> if (decided_to_slp && dump_enabled_p ()) >> - dump_printf_loc (MSG_NOTE, vect_location, >> - "Decided to SLP %d instances. Unrolling factor %d", >> + dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, vect_location, >> + "Vectorized %d SLP instances with unroll factor %d", >> decided_to_slp, unrolling_factor); > > Keep this MSG_NOTE please. Fixed. > >> return (decided_to_slp > 0); >> @@ -3181,7 +3181,7 @@ vect_slp_transform_bb (basic_block bb) >> } >> >> if (dump_enabled_p ()) >> - dump_printf_loc (MSG_OPTIMIZED_LOCATIONS, vect_location, >> + dump_printf_loc (MSG_NOTE, vect_location, >> "BASIC BLOCK VECTORIZED\n"); >> >> destroy_bb_vec_info (bb_vinfo); > > The patch is ok with these changes if it tests ok. Thanks, patch fixed as described above, retested, and committed as r199620. Teresa > > Thanks, > Richard. -- Teresa Johnson | Software Engineer | tejohn...@google.com | 408-460-2413