Variable rank disappears over Loop invocation
|
|
Bugzilla Link |
477 |
Created on |
Mar 15, 2009 17:51 |
Resolution |
LATER |
Resolved on |
Mar 19, 2009 18:58 |
Version |
1.00beta |
OS |
Linux |
Architecture |
PC |
Attachments |
mini.sac |
Extended Description
Created an attachment (id=505)
source code to reproduce failure
The attached ipdd.sac (tinkered) ran very slowly, so I looked
at the main() inner loop. There is a call to a lacfn, Loop_0,
for a function that is doing x[.]+y[.], but the type in the header
says [*], with result type [*].
If I replace the "x+y" in the code with an explicit WL to do the
add, it all works OK. See function PLUS in the attachment.
Sadly, even when that bug is worked around, this matrix product still runs
6X slower than Fortran 77.
Note different code if compiled with -DBUG.