https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80986
--- Comment #8 from linzj <manjian2006 at gmail dot com> --- (In reply to Anssi Hannula from comment #7) > Created attachment 46772 [details] > Simple testcase for the issue > > The regression still exists on GCC trunk. > > We also hit the issue with > https://github.com/google/skia/blob/9318a6cfbcdd160151bc4ae36425563f8cf68d3e/ > src/opts/SkRasterPipeline_opts.h causing incorrect rendering. > > Code is working correctly on: GCC 5.4.0, clang 6.0.1 > Not working correctly on: GCC 7.3.0 and GCC trunk r274958 (and GCC 6.3.0 > according to the original reporter) > > Attached is a simple testcase that can be used with -std=c++11 > -mfloat-abi=softfp for ARM. > Disassembly of main() shows the proper VLDR to s0 only for the latter > "non-auto" call of func() when compiled with affected GCC. Just set affects_type_identity field like I did, it's okay.