https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110888
--- Comment #1 from Rimvydas (RJ) <rimvydas.jas at gmail dot com> --- Created attachment 55680 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=55680&action=edit possible fix With this patch an extra register is freed and compiler produces expected code on x86_64: movsd (%rdi), %xmm0 mulsd (%rsi), %xmm0 movsd %xmm0, (%rdx) ret Patch could be expanded to consider inlining trivial matmul cases even for known arrays of size 1 with rank > 2.