--- Comment #18 from rguenth at gcc dot gnu dot org 2007-01-22 11:11
---
Subject: Bug 30038
Author: rguenth
Date: Mon Jan 22 11:11:00 2007
New Revision: 121052
URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=121052
Log:
2007-01-22 Richard Guenther [EMAIL PROTECTED]
PR
--- Comment #19 from rguenth at gcc dot gnu dot org 2007-01-22 11:12
---
Fixed.
--
rguenth at gcc dot gnu dot org changed:
What|Removed |Added
Severity|normal
--- Comment #17 from burnus at gcc dot gnu dot org 2006-12-17 23:19 ---
Using the patch of PR 30223 (add cbrt, cexpi and sincos to Fortran), I don't
get any speed up (21.95s for fatigue).
Using additionally http://gcc.gnu.org/ml/gcc-patches/2006-12/msg00958.html
(folding of cexp ()) I
--- Comment #16 from dorit at il dot ibm dot com 2006-12-12 20:59 ---
(In reply to comment #13)
Looks like what's blocking vectorization of the loop is:
sinc.f90:8: note: value used after loop.
sinc.f90:8: note: not vectorized: relevant stmt not supported: D.1408_32 =
--- Comment #8 from rguenth at gcc dot gnu dot org 2006-12-07 16:06 ---
I have a patch.
--
rguenth at gcc dot gnu dot org changed:
What|Removed |Added
--- Comment #9 from rguenth at gcc dot gnu dot org 2006-12-07 16:07 ---
Created an attachment (id=12767)
-- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12767action=view)
patch prototype
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30038
--- Comment #10 from burnus at gcc dot gnu dot org 2006-12-07 20:00 ---
Using the three patches:
http://gcc.gnu.org/ml/gcc-patches/2006-12/msg00500.html
http://gcc.gnu.org/ml/gcc-patches/2006-12/msg00499.html
http://gcc.gnu.org/ml/gcc-patches/2006-12/msg00476.html
gfortran is able to
--- Comment #11 from dorit at il dot ibm dot com 2006-12-07 20:19 ---
(In reply to comment #10)
Using the three patches:
...
gfortran is able to use sincos - and does so for my example (comment #0; the
example, however, cannot be vectorized).
why? (what does
--- Comment #12 from burnus at gcc dot gnu dot org 2006-12-07 20:32 ---
(In reply to comment #11)
gfortran is able to use sincos - and does so for my example (comment #0; the
example, however, cannot be vectorized).
why? (what does -fdump-tree-vect-details say?)
sinc.f90:8: note:
--- Comment #13 from burnus at gcc dot gnu dot org 2006-12-07 20:36 ---
Created an attachment (id=12769)
-- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12769action=view)
-fdump-tree-vect-details output of the example
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30038
--- Comment #14 from rguenth at gcc dot gnu dot org 2006-12-07 20:48
---
sincos is not being used because we don't see that time is not aliased by the
writes to strain_tensor:
# VUSE SMT.774_6041;
time.463_952 = time;
D.3397_953 = time.463_952 *
--- Comment #15 from rguenth at gcc dot gnu dot org 2006-12-07 20:50
---
Note that for _vectorization_ of sincos we need the following:
- a vectorized sincos implementation and vectorization support for it
(that's the easier part). At the moment we only can vectorize calls
to
--- Comment #7 from rguenth at gcc dot gnu dot org 2006-12-06 09:52 ---
Ok, so my plan is to go in small steps:
- at gimplification time change calls to sincos (x, s, c) to calls to cexp
like
_Complex __typeof__(s) tmp = cexp ( { 0., x } );
s = __imag tmp;
c = __real tmp;
--- Comment #1 from ubizjak at gmail dot com 2006-12-01 10:14 ---
Depends on PR tree_optimization/17687. I guess it is a time to finally resolve
that one...
--
ubizjak at gmail dot com changed:
What|Removed |Added
--- Comment #2 from bonzini at gnu dot org 2006-12-01 10:57 ---
Not only that; the glibc sincos, for example, would not gain anything. ifort
gains because it basically computes the sine and cosine using two halves of an
XMM register.
Richard had a really gross ;-) patch to do this.
--- Comment #3 from bonzini at gnu dot org 2006-12-01 11:04 ---
We need multiple steps here to solve this bug and 17687:
1) change sincos (x, s, c) to
sincos (x, t1, t2);
s = t1;
c = t2;
Don't know the best place to do this.
2) alternatively, change sincos (x, s, c)
--- Comment #4 from rguenth at gcc dot gnu dot org 2006-12-01 16:00 ---
My gross patch will still work ;)
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30038
--- Comment #5 from rguenth at gcc dot gnu dot org 2006-12-01 16:03 ---
Btw, the gross patch is attached to PR17687.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30038
--- Comment #6 from burnus at gcc dot gnu dot org 2006-12-01 18:05 ---
(In reply to comment #5)
Btw, the gross patch is attached to PR17687.
If you mean attachment (id=12055; patch using cexp) then note that it no longer
applies cleanly:
2 out of 5 hunks FAILED -- saving rejects to
19 matches
Mail list logo