[Bug tree-optimization/18438] vectorizer failed for vector matrix multiplication

mkuvyrkov at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Mon Dec 12 09:35:00 GMT 2016


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=18438

--- Comment #10 from Maxim Kuvyrkov <mkuvyrkov at gcc dot gnu.org> ---
(In reply to Maxim Kuvyrkov from comment #9)
> which then becomes for aarch64:
> .L4:
> 	ld2	{v0.2d - v1.2d}, [x1]
> 	add	w2, w2, 1
> 	cmp	w2, w7
> 	eor	v0.16b, v2.16b, v0.16b
> 	umov	x4, v0.d[1]
> 	st1	{v0.d}[0], [x1]
> 	add	x1, x1, 32
> 	str	x4, [x1, -16]
> 	bcc	.L4

IIUC,
        umov    x4, v0.d[1]
        st1     {v0.d}[0], [x1]
        str     x4, [x1, -16]
could become just
        st2     {v0.d - v1.2d}, [x1]


More information about the Gcc-bugs mailing list