-
- Downloads
Fixed Kill set computation. We were computing the kill set in the initial
constraint assignment pass, but this didn't work, since new constraints (that we also kill) could be added by other blocks or in subsequent invocations of constraint propagation. Instead, we make the Block-Kill be a list of the lambda-vars killed, and dynamically determine the kill set in FLOW-PROPAGATE-CONSTRAINTS. Also, changed stuff to reinitialize the IN and OUT sets on repeated invocations. I believe that this is no more correct, but it does make the flow analysis process more understandable, since the size of these sets will only increase. Previously these sets could start oversize and decrease if we somehow lost information between this invocation and the previous one.
Loading
Please register or sign in to comment