public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug tree-optimization/37021]  New: Fortran Complex reduction / multiplication not vectorized
@ 2008-08-04 17:57 rguenth at gcc dot gnu dot org
  2008-08-04 17:59 ` [Bug tree-optimization/37021] " rguenth at gcc dot gnu dot org
                   ` (8 more replies)
  0 siblings, 9 replies; 27+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2008-08-04 17:57 UTC (permalink / raw)
  To: gcc-bugs

subroutine to_product_of(self,a,b,a1,a2)
  complex(kind=8) :: self (:)
  complex(kind=8), intent(in) :: a(:,:)
  complex(kind=8), intent(in) :: b(:)
  integer a1,a2
  self = ZERO
  do i = 1,a1
    do j = 1,a2
      self(i) = self(i) + a(i,j)*b(j)
    end do
  end do
end subroutine

There are numerous reasons this is not vectorized at the moment:
 1) aliasing doesn't tell apart the data of self, a and b
 2) the reduction is obfuscated by extra SSA_NAME copies from store-motion
    (after you fix 1)
 3) REALPART_EXPR < (*ptr)[i] > is not handled by data dependency analysis
 4) ... ?


-- 
           Summary: Fortran Complex reduction / multiplication not
                    vectorized
           Product: gcc
           Version: 4.4.0
            Status: UNCONFIRMED
          Keywords: missed-optimization, alias
          Severity: enhancement
          Priority: P3
         Component: tree-optimization
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: rguenth at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37021


^ permalink raw reply	[flat|nested] 27+ messages in thread
[parent not found: <bug-37021-4@http.gcc.gnu.org/bugzilla/>]

end of thread, other threads:[~2023-07-21 12:28 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-08-04 17:57 [Bug tree-optimization/37021] New: Fortran Complex reduction / multiplication not vectorized rguenth at gcc dot gnu dot org
2008-08-04 17:59 ` [Bug tree-optimization/37021] " rguenth at gcc dot gnu dot org
2008-08-19 15:31 ` rguenth at gcc dot gnu dot org
2009-01-21 15:43 ` rguenth at gcc dot gnu dot org
2009-01-23 15:33 ` rguenth at gcc dot gnu dot org
2009-01-23 15:36 ` rguenth at gcc dot gnu dot org
2009-01-25  9:13 ` irar at il dot ibm dot com
2009-01-25 11:04 ` rguenther at suse dot de
2009-01-25 12:17 ` irar at il dot ibm dot com
2009-01-27 12:40 ` dorit at gcc dot gnu dot org
     [not found] <bug-37021-4@http.gcc.gnu.org/bugzilla/>
2011-03-25 11:49 ` sebastian.hegler@tu-dresden.de
2011-03-25 12:27 ` sebastian.hegler@tu-dresden.de
2011-03-25 13:13 ` rguenther at suse dot de
2012-07-13  8:46 ` rguenth at gcc dot gnu.org
2013-02-13 15:58 ` rguenth at gcc dot gnu.org
2013-03-27 10:39 ` rguenth at gcc dot gnu.org
2013-03-27 10:40 ` rguenth at gcc dot gnu.org
2013-04-07 13:18 ` dominiq at lps dot ens.fr
2015-05-12 11:56 ` rguenth at gcc dot gnu.org
2015-06-10 10:45 ` rguenth at gcc dot gnu.org
2015-08-25  8:11 ` rguenth at gcc dot gnu.org
2015-08-27 22:09 ` wschmidt at gcc dot gnu.org
2015-08-28  7:46 ` rguenther at suse dot de
2015-08-28 13:20 ` wschmidt at gcc dot gnu.org
2015-08-28 13:31 ` wschmidt at gcc dot gnu.org
2015-10-22 10:03 ` rguenth at gcc dot gnu.org
2023-07-21 12:28 ` rguenth at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).