This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Generate fused widening multiply-and-accumulate operations only when the widening multiply has single use


On 21/10/13 23:01, Yufeng Zhang wrote:
Hi,

This patch changes the widening_mul pass to fuse the widening multiply
with accumulate only when the multiply has single use.  The widening_mul
pass currently does the conversion regardless of the number of the uses,
which can cause poor code-gen in cases like the following:

This seems reasonable to me, not that I have authority to approve it.

You should probably create at least one test case, ideally for both AArch32 and AArch64. There are already AArch32 testcases in gcc.target for the widening multiplies cases, but as they are single use only, you shouldn't need to adjust them.

Andrew


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]