WLF crashes: SSAWLI thinks a WL generator is AKV, but SSAWithloopFolding does not
|
|
Bugzilla Link |
1075 |
Created on |
May 02, 2013 18:50 |
Resolution |
FIXED |
Resolved on |
May 02, 2013 19:07 |
Version |
svn |
OS |
Linux |
Architecture |
PC |
Attachments |
twopartoffsetWL.sac |
Extended Description
Created an attachment (id=973)
source code to reproduce fault
The above arose sometime between Build #18091 and Build #18130.
I think what is going on is this:
Assume we have a generator definition such as:
B = [0];
LB = B;
Previously, when we got to WLF, LB was AKV, so WLF's use of TYisAKV( LB)
returned TRUE. I think that SSAWLI.c uses PM to decide whether to fold
or not, so it would claim that LB was (sort of) AKV.
Now, when we get to WLF, LB is AKS, because TC has not run in the interim.
Rather than go back through a bunch of old builds to see who did this
( and because it could arise otherwise, I think...), I just made the
function WLFarrayST2ArrayInt use a PM to look for the N_array it expects
to be passed.
That appears to have fixed things, but I'm going to run the AWLF unit tests
to make sure.
The current Build #18130, dies in -bopt:cyc:wlf:2, with a less-than-obvious
fault.