https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87678
--- Comment #6 from Uroš Bizjak <ubizjak at gmail dot com> --- Here is a bit simpler testcase: --cut here-- typedef float __v4sf __attribute__((__vector_size__ (16))); __v4sf foo (__v4sf x) { return x + (__v4sf){ 2.3f, 2.3f, 2.3f, 2.3f }; } --cut here-- "cc1 -O2" on x86_64 target will show the issue in _.combine dump.