Skip to content

Add thread IDs with history#331

Merged
sim642 merged 49 commits intomasterfrom
threadid-history
Sep 8, 2021
Merged

Add thread IDs with history#331
sim642 merged 49 commits intomasterfrom
threadid-history

Conversation

@sim642
Copy link
Copy Markdown
Member

@sim642 sim642 commented Aug 20, 2021

Implements the abstract thread IDs proposed by the relational traces paper. The resulting thread IDs know their uniqueness on their own, without needing the thread analysis to construct this via global information.

Also adds a Thread variant to base's value domain for a set of thread IDs (for pthread_t variables). Since the new abstract thread IDs are no longer just varinfos, one cannot abuse the address domain for this.

sim642 added 30 commits August 17, 2021 11:11
@sim642
Copy link
Copy Markdown
Member Author

sim642 commented Aug 25, 2021

Since the ThreadIdDomain.Thread module is statically used all over the place, it's not so easy to make it dynamically changeable via an option, since that cannot be initialized at module top level, but must only be done with AfterConfig and others cannot statically refer to it.

An alternative would be to do what the array domains do (flag configured): have a module which delegates all functions to the chosen implementation separately.

@sim642 sim642 merged commit 6e4a725 into master Sep 8, 2021
@sim642 sim642 deleted the threadid-history branch September 8, 2021 11:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants