On Tue, Jun 28, 2011 at 11:29 AM, Kai Tietz <kti...@redhat.com> wrote: > Oh, missed to fill comment.
> Thanks, > Kai > > Index: gcc-head/gcc/tree-ssa-math-opts.c > =================================================================== > --- gcc-head.orig/gcc/tree-ssa-math-opts.c > +++ gcc-head/gcc/tree-ssa-math-opts.c > @@ -1821,7 +1821,11 @@ execute_optimize_bswap (void) > { > gimple_stmt_iterator gsi; > > - for (gsi = gsi_after_labels (bb); !gsi_end_p (gsi); gsi_next (&gsi)) > + /* We scan for bswap patterns reverse for making sure we get We do a reverse scan for bswap patterns to make sure we get the widest match. Ok with that change. Richard. > + widest match. As bswap pattern matching doesn't handle > + previously inserted smaller bswap replacements as sub- > + patterns, the wider variant wouldn't be detected. */ > + for (gsi = gsi_last_bb (bb); !gsi_end_p (gsi); gsi_prev (&gsi)) > { > gimple stmt = gsi_stmt (gsi); > tree bswap_src, bswap_type; >