On Tue, 13 Dec 2016, Thomas Preudhomme wrote: > Hi, > > Fix in r242869 for PR77673 (bswap loads after end of object) applies cleanly > on GCC 6 and with trivial fix for GCC 5 (gimple * in GCC 6 -> gimple in GCC > 5). The backports also bootstrap fine on x86_64-linux-gnu and testsuite shows > no regression.
Ok. Richard. > ChangeLog entries are as follow: > > > *** gcc/ChangeLog *** > > 2016-12-12 Thomas Preud'homme <thomas.preudho...@arm.com> > > Backport from mainline > 2016-11-25 Thomas Preud'homme <thomas.preudho...@arm.com> > > PR tree-optimization/77673 > * tree-ssa-math-opts.c (struct symbolic_number): Add new src field. > (init_symbolic_number): Initialize src field from src parameter. > (perform_symbolic_merge): Select most dominated statement as the > source statement. Set src field of resulting n structure from the > input src with the lowest address. > (find_bswap_or_nop): Rename source_stmt into ins_stmt. > (bswap_replace): Rename src_stmt into ins_stmt. Initially get source > of load from src field rather than insertion statement. Cancel > optimization if statement analyzed is not dominated by the insertion > statement. > (pass_optimize_bswap::execute): Rename src_stmt to ins_stmt. Compute > dominance information. > > > *** gcc/testsuite/ChangeLog *** > > 2016-12-12 Thomas Preud'homme <thomas.preudho...@arm.com> > > Backport from mainline > 2016-11-25 Thomas Preud'homme <thomas.preudho...@arm.com> > > PR tree-optimization/77673 > * gcc.dg/pr77673.c: New test. > > > Is this ok for gcc-5-branch and gcc-6-branch? > > Best regards, > > Thomas > -- Richard Biener <rguent...@suse.de> SUSE LINUX GmbH, GF: Felix Imendoerffer, Jane Smithard, Graham Norton, HRB 21284 (AG Nuernberg)