https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95839
--- Comment #2 from Uroš Bizjak <ubizjak at gmail dot com> --- What I find interesting is a similar case with the division instead of the addition. Clang compiles it to: divps %xmm1, %xmm0 retq Considering that we have [a0, a1, 0, 0] / [b0, b1, 0, 0], this will surely fire invalid operation exception. I have explicitly avoided generation of division using 4-element DIVPS for v2sf operands exactly due to this issue.