Livermore Loop 03,12,07 LACFUNs need AVIS_MIN and AVIS_MAX for AWLF
Bugzilla Link | 905 |
Created on | Jan 18, 2012 21:26 |
Version | svn |
OS | Linux |
Architecture | PC |
Extended Description
A number of the Livermore Loops and, presumably, lots of other codes, fail to handle AWLF properly. Here is one reason why: drop( [i], vec) - drop( [-i], vec) This does not AWLF, because the drop() code is unable to ensure that: G1: (i <= shape(vec)[0]) && ( (-i) <= shape(vec)[0]) I see two ways around this: A. Introduce AVIS_MIN and AVIS_MAX into LACFUN headers, a la AVIS_DIM. This will catch some of the failures, when the drop() code is within a LACFUN, and vec is defined without an intervening user-defined fun (which would lose AVIS_MIN). B. Introduce guards into stdlib code to handle G1. This would work in many circumstances, and would be CF'd out of existence in case A. I am going to beat up on IVEXI and make it do the job, unless ISAA can be make to do it.
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information