Hi Richard, > The following patch makes sure to preserve (mis-)alignment of memory > references when IVOPTs generates TARGET_MEM_REFs for them. > > Bootstrapped on x86_64-unknown-linux-gnu, testing in progress. > > Richard. > > 2017-04-06 Richard Biener <rguent...@suse.de> > > PR tree-optimization/80334 > * tree-ssa-loop-ivopts.c (rewrite_use_address): Properly > preserve alignment of accesses. > > * g++.dg/torture/pr80334.C: New testcase.
the new testcase FAILs on 32-bit Solaris/SPARC: +FAIL: g++.dg/torture/pr80334.C -O0 (test for excess errors) +FAIL: g++.dg/torture/pr80334.C -O1 (test for excess errors) +FAIL: g++.dg/torture/pr80334.C -O2 (test for excess errors) +FAIL: g++.dg/torture/pr80334.C -O2 -flto (test for excess errors) +FAIL: g++.dg/torture/pr80334.C -O2 -flto -flto-partition=none (test for exce ss errors) +FAIL: g++.dg/torture/pr80334.C -O3 -fomit-frame-pointer -funroll-loops -fpeel -loops -ftracer -finline-functions (test for excess errors) +FAIL: g++.dg/torture/pr80334.C -O3 -g (test for excess errors) +FAIL: g++.dg/torture/pr80334.C -Os (test for excess errors) Excess errors: /vol/gcc/src/hg/trunk/local/gcc/testsuite/g++.dg/torture/pr80334.C:11:20: warning: requested alignment 16 is larger than 8 [-Wattributes] Rainer -- ----------------------------------------------------------------------------- Rainer Orth, Center for Biotechnology, Bielefeld University