On 5 April 2017 at 13:41, Bin.Cheng <amker.ch...@gmail.com> wrote: > On Wed, Apr 5, 2017 at 12:38 PM, Markus Trippelsdorf > <mar...@trippelsdorf.de> wrote: >> On 2017.04.03 at 15:20 +0200, Richard Biener wrote: >>> I'm re-testing the following variant. >>> >>> Richard. >>> >>> 2017-04-03 Richard Biener <rguent...@suse.de> >>> >>> PR middle-end/80281 >>> * match.pd (A + (-B) -> A - B): Make sure to preserve unsigned >>> arithmetic done for the negate or the plus. Simplify. >>> (A - (-B) -> A + B): Likewise. >>> * fold-const.c (split_tree): Make sure to not negate pointers. >>> >>> * gcc.dg/torture/pr80281.c: New testcase. >> >> gcc.dg/tree-ssa/pr40921.c started to fail with -march=skylake: >> >> % gcc -march=skylake -c -O2 -fdump-tree-optimized -ffast-math -c >> gcc.dg/tree-ssa/pr40921.c >> % cat pr40921.i.227t.optimized | grep "\-y" >> _3 = -y_4(D); > Also on AArch64. >
And on some arm configurations, if that's easier to reproduce: * -mthumb/-march=armv8-a/-mfpu=crypto-neon-fp-armv8/-mfloat-abi=hard * --with-cpu=cortex-a15 --with-fpu=neon-vfpv4 * --with-cpu=cortex-a57 --with-fpu=crypto-neon-fp-armv8 Thanks, Christophe > Thanks, > bin >> >> -- >> Markus