[Bug fortran/27662] Transpose doesn't work on function return

2006-05-20 Thread pault at gcc dot gnu dot org
--- Comment #8 from pault at gcc dot gnu dot org 2006-05-20 06:23 --- HJ Your ISP does not like my address for some reason - it keeps bouncing my mail to you. Well done! tonto-1.0/SPEC2006 now runs correctly. Paul -- pault at gcc dot gnu dot org changed: What

[Bug fortran/27662] Transpose doesn't work on function return

2006-05-20 Thread pault at gcc dot gnu dot org
--- Comment #9 from pault at gcc dot gnu dot org 2006-05-20 20:10 --- I have been writing to Dylan and Daniel, cc'd to you but your copies bounce. The upshot of the exchange is that on an Athlon1700, the spec2006 testcase runs on tonto-1.0 in 1hour 5minutes with gfortran -O3

[Bug fortran/27662] Transpose doesn't work on function return

2006-05-19 Thread hjl at gcc dot gnu dot org
--- Comment #7 from hjl at gcc dot gnu dot org 2006-05-20 00:28 --- Subject: Bug 27662 Author: hjl Date: Sat May 20 00:28:14 2006 New Revision: 113922 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=113922 Log: gcc/fortran/ 2006-05-19 H.J. Lu [EMAIL PROTECTED] PR

[Bug fortran/27662] Transpose doesn't work on function return

2006-05-18 Thread hjl at lucon dot org
--- Comment #1 from hjl at lucon dot org 2006-05-18 18:24 --- This testcase is derived from Tonto in SPEC CPU 2006. -- hjl at lucon dot org changed: What|Removed |Added

[Bug fortran/27662] Transpose doesn't work on function return

2006-05-18 Thread kargl at gcc dot gnu dot org
--- Comment #2 from kargl at gcc dot gnu dot org 2006-05-18 20:41 --- Actually, transpose by itself does the right thing. It is the combination of matmul and transpose that is screwing up indexing. A slightly modified version of your program gives troutmask:kargl[290] ./z 1.0 0.0 0.0

[Bug fortran/27662] Transpose doesn't work on function return

2006-05-18 Thread hjl at lucon dot org
--- Comment #3 from hjl at lucon dot org 2006-05-18 21:22 --- I got atmp.17.dtype = 538; atmp.17.dim[0].stride = 2; atmp.17.dim[0].lbound = 0; atmp.17.dim[0].ubound = 1; atmp.17.dim[1].stride = 0; - Shouldn't it be 1? atmp.17.dim[1].lbound = 0; atmp.17.dim[1].ubound =

[Bug fortran/27662] Transpose doesn't work on function return

2006-05-18 Thread hjl at lucon dot org
--- Comment #4 from hjl at lucon dot org 2006-05-18 21:54 --- Also atmp.6.dtype = 538; atmp.6.dim[0].stride = 1; atmp.6.dim[0].lbound = 0; atmp.6.dim[0].ubound = 1; atmp.6.dim[1].stride = 2; atmp.6.dim[1].lbound = 0; atmp.6.dim[1].ubound = 1; atmp.6.data

[Bug fortran/27662] Transpose doesn't work on function return

2006-05-18 Thread hjl at lucon dot org
--- Comment #5 from hjl at lucon dot org 2006-05-18 22:21 --- There are 2042 /* Zero the first stride to indicate a temporary. */ 2043 tmp = gfc_conv_descriptor_stride (info-descriptor, gfc_rank_cst[0]); 2044 gfc_add_modify_expr (se-pre, tmp,

[Bug fortran/27662] Transpose doesn't work on function return

2006-05-18 Thread hjl at lucon dot org
--- Comment #6 from hjl at lucon dot org 2006-05-18 23:02 --- This hack works for the testcase. But I don't know if it is the correct fix or not. 2006-05-17 H.J. Lu [EMAIL PROTECTED] PR fortran/27662 * trans-expr.c (gfc_conv_function_call) Restore the first