-
Notifications
You must be signed in to change notification settings - Fork 84
Analysis of Thread Must Joins #385
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
Conversation
Couldn't you use this joined threads information to know when the main thread is back single threaded and have the test for something at that point, like races. Something similar to what the existing thread analysis tests. |
Yes, but this also requires extensively modifying both this analysis and the In order to be able to draw that conclusion one would need to make a few modifications:
For the paper, this is not necessary, as we will simply read I think this global C set that allows for concluding we are back in single-threaded mode, might not even be a straightforward abstraction of our local trace semantics. It might be interesting to investigate how powerful such an analysis would be, but I think it is beyond the scope of what we want do to do for the current paper. |
This adds an analysis that tracks for all program points the set of must-joined (unique) thread ids.
This is hard to test now, so the two examples contain manual annotations.
This is another prerequisite for #379, but I thought it would make sense to discuss this in isolation first.