Skip to content

Replace part_access transfer function with PartAccess query#162

Merged
sim642 merged 9 commits intomasterfrom
part_access-query
Jan 21, 2021
Merged

Replace part_access transfer function with PartAccess query#162
sim642 merged 9 commits intomasterfrom
part_access-query

Conversation

@sim642
Copy link
Copy Markdown
Member

@sim642 sim642 commented Jan 19, 2021

This PR makes the following changes:

  1. Replaces the part_access transfer function with PartAccess query.
    This simplifies the Spec signature and allows removing dummy part_access implementations from Spec lifting functors. Especially as anything outside of MCP2 doesn't influence access partitioning anyway. The meet of the new query result is chosen to coincide with the old part_access combination logic in MCP2, giving exactly the same behavior.
  2. Moves access handling out of MCP2.
    It doesn't need to be there at all and mutex analysis is a suitable place for it anyway, considering it is the one to invoke the Access queries in the first place.
  3. Removes Access query.
    Since mutex analysis can directly partition accesses using PartAccess query, the Access query, which was previously used to signal MCP2, is now unnecessary.

It could be also argued that the whole accessing logic doesn't really belong to mutex analysis either and could be extracted out to a separate analysis, but I thought I won't go that far immediately.

@sim642 sim642 added the cleanup Refactoring, clean-up label Jan 19, 2021
@michael-schwarz
Copy link
Copy Markdown
Member

LGTM!

@sim642 sim642 merged commit c8e1cb8 into master Jan 21, 2021
@sim642 sim642 deleted the part_access-query branch January 21, 2021 12:14
@sim642 sim642 mentioned this pull request May 4, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cleanup Refactoring, clean-up

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants