[Bug target/53949] [SH] Add support for mac.w / mac.l instructions
olegendo at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Sat May 4 13:39:00 GMT 2013
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53949
--- Comment #9 from Oleg Endo <olegendo at gcc dot gnu.org> 2013-05-04 13:39:10 UTC ---
(In reply to comment #3)
> - Loops with multiple running sums like
> for (int i = 0; i < 16; ++i)
> {
> sum0 += (int64_t)(*a++) * (int64_t)(*b++);
> sum1 += (int64_t)(*c++) * (int64_t)(*d++);
> }
>
> result in macl:mach swapping to general reg pairs between subsequent
> mac.w instructions. Ideally such loops should be split into multiple
> loops like in the previous example.
This is basically what -ftree-loop-distribution does. The question would be
how to re-use it for this particular case.
More information about the Gcc-bugs
mailing list