-
Notifications
You must be signed in to change notification settings - Fork 63
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Heapster array permission bug fixes #1659
Conversation
…ginning of the supplied range; fixed llvmMakeSubArray to correctly offset the borrows in the array it returns
…rows it computes as it computes them; fixed case 4 of proveVarLLVMArrayH so that it only uses the unborrowed ranges for permissions on the LHS
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks awesome! Your documentation comment above proveVarLLVMArrayH
was incredibly helpful for me in understanding your algorithm. I did get confused in a few places though, and I noted what I thought might've helped me follow along better what was going on. No necessary changes though, if just want to get this merged.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh! The "ways" of the top-level comment not lining up with the "cases" makes everything make so much more sense. Also I really like how you re-worded the comment for case 3. LGTM!
This PR re-works the
proveVarLLVMArray
function to address a few infinite loops and other bugs in proving array permissions. It also adds more comments to document what that function is doing. Additionally, the new examplealloc_sum_array_test
has been added toarrays.c
to exercise the fixes.