[Bug target/65951] [AArch64] Will not vectorize 64bit integer multiplication

2016-07-14 Thread ktkachov at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65951 ktkachov at gcc dot gnu.org changed: What|Removed |Added Status|NEW |RESOLVED CC

[Bug target/65951] [AArch64] Will not vectorize 64bit integer multiplication

2016-07-14 Thread ktkachov at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65951 --- Comment #12 from ktkachov at gcc dot gnu.org --- Author: ktkachov Date: Thu Jul 14 14:32:39 2016 New Revision: 238340 URL: https://gcc.gnu.org/viewcvs?rev=238340&root=gcc&view=rev Log: [vectorizer][2/2] Hook up mult synthesis logic into vecto

[Bug target/65951] [AArch64] Will not vectorize 64bit integer multiplication

2016-05-02 Thread wilson at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65951 --- Comment #11 from Jim Wilson --- I've spent some time looking at solutions to this problem. One way to solve it is to simply add a mulv2di3 pattern to the aarch64 port. The presence of a multiply pattern means we will go through expand_mult,

[Bug target/65951] [AArch64] Will not vectorize 64bit integer multiplication

2016-05-02 Thread wilson at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65951 --- Comment #10 from Jim Wilson --- Created attachment 38399 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38399&action=edit testcase unsigned long multiply by constant

[Bug target/65951] [AArch64] Will not vectorize 64bit integer multiplication

2016-05-02 Thread wilson at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65951 --- Comment #8 from Jim Wilson --- Created attachment 38397 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38397&action=edit patch to use synth_mult to generate vector multiplies

[Bug target/65951] [AArch64] Will not vectorize 64bit integer multiplication

2016-05-02 Thread wilson at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65951 --- Comment #9 from Jim Wilson --- Created attachment 38398 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38398&action=edit testcase signed long multiply by constant

[Bug target/65951] [AArch64] Will not vectorize 64bit integer multiplication

2016-05-02 Thread wilson at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65951 --- Comment #7 from Jim Wilson --- Created attachment 38396 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=38396&action=edit patch to add a mulv2di3 pattern

[Bug target/65951] [AArch64] Will not vectorize 64bit integer multiplication

2015-07-09 Thread vekumar at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65951 vekumar at gcc dot gnu.org changed: What|Removed |Added CC||vekumar at gcc dot gnu.org -

[Bug target/65951] [AArch64] Will not vectorize 64bit integer multiplication

2015-05-05 Thread alalaw01 at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65951 --- Comment #5 from alalaw01 at gcc dot gnu.org --- I believe the definitive algorithm for converting multiply-by-constant into adds+shifts(+etc.) lives in expmed.c. I don't at present have a plan for how to reuse that, but if we could do so _in_s

[Bug target/65951] [AArch64] Will not vectorize 64bit integer multiplication

2015-05-02 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65951 Richard Biener changed: What|Removed |Added Blocks||53947 --- Comment #4 from Richard Biene

[Bug target/65951] [AArch64] Will not vectorize 64bit integer multiplication

2015-05-01 Thread alalaw01 at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65951 --- Comment #3 from alalaw01 at gcc dot gnu.org --- Yes you are right, we have no V2DI multiply. We do have V2DI shifts + add, however, which would work well for some constants, e.g. the multiply by 16 in PR/65952; perhaps the vectorizer does not

[Bug target/65951] [AArch64] Will not vectorize 64bit integer multiplication

2015-04-30 Thread pinskia at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65951 Andrew Pinski changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed|