[Bug tree-optimization/30038] Call to sin(x), cos(x) should be transformed to sincos(x)

2007-01-22 Thread rguenth at gcc dot gnu dot org
--- 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

[Bug tree-optimization/30038] Call to sin(x), cos(x) should be transformed to sincos(x)

2007-01-22 Thread rguenth at gcc dot gnu dot org
--- 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

[Bug tree-optimization/30038] Call to sin(x), cos(x) should be transformed to sincos(x)

2006-12-17 Thread burnus at gcc dot gnu dot org
--- 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

[Bug tree-optimization/30038] Call to sin(x), cos(x) should be transformed to sincos(x)

2006-12-12 Thread dorit at il dot ibm dot com
--- 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 =

[Bug tree-optimization/30038] Call to sin(x), cos(x) should be transformed to sincos(x)

2006-12-07 Thread rguenth at gcc dot gnu dot org
--- 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

[Bug tree-optimization/30038] Call to sin(x), cos(x) should be transformed to sincos(x)

2006-12-07 Thread rguenth at gcc dot gnu dot org
--- 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

[Bug tree-optimization/30038] Call to sin(x), cos(x) should be transformed to sincos(x)

2006-12-07 Thread burnus at gcc dot gnu dot org
--- 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

[Bug tree-optimization/30038] Call to sin(x), cos(x) should be transformed to sincos(x)

2006-12-07 Thread dorit at il dot ibm dot com
--- 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

[Bug tree-optimization/30038] Call to sin(x), cos(x) should be transformed to sincos(x)

2006-12-07 Thread burnus at gcc dot gnu dot org
--- 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:

[Bug tree-optimization/30038] Call to sin(x), cos(x) should be transformed to sincos(x)

2006-12-07 Thread burnus at gcc dot gnu dot org
--- 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

[Bug tree-optimization/30038] Call to sin(x), cos(x) should be transformed to sincos(x)

2006-12-07 Thread rguenth at gcc dot gnu dot org
--- 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 *

[Bug tree-optimization/30038] Call to sin(x), cos(x) should be transformed to sincos(x)

2006-12-07 Thread rguenth at gcc dot gnu dot org
--- 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

[Bug tree-optimization/30038] Call to sin(x), cos(x) should be transformed to sincos(x)

2006-12-06 Thread rguenth at gcc dot gnu dot org
--- 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;

[Bug tree-optimization/30038] Call to sin(x), cos(x) should be transformed to sincos(x)

2006-12-01 Thread ubizjak at gmail dot com
--- 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

[Bug tree-optimization/30038] Call to sin(x), cos(x) should be transformed to sincos(x)

2006-12-01 Thread bonzini at gnu dot org
--- 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.

[Bug tree-optimization/30038] Call to sin(x), cos(x) should be transformed to sincos(x)

2006-12-01 Thread bonzini at gnu dot org
--- 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)

[Bug tree-optimization/30038] Call to sin(x), cos(x) should be transformed to sincos(x)

2006-12-01 Thread rguenth at gcc dot gnu dot org
--- 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

[Bug tree-optimization/30038] Call to sin(x), cos(x) should be transformed to sincos(x)

2006-12-01 Thread rguenth at gcc dot gnu dot org
--- 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

[Bug tree-optimization/30038] Call to sin(x), cos(x) should be transformed to sincos(x)

2006-12-01 Thread burnus at gcc dot gnu dot org
--- 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