forked from JuliaLang/julia
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
effects: add
:inaccessiblememonly
effect (JuliaLang#46198)
This is a preparatory PR for future improvements on the effects analysis. This commit adds the `:inaccessiblememonly` helper effect, that tracks if a method involves any access or modification on any mutable state. This effect property is basically same as LLVM's `inaccessiblememonly` function attribute, except that it only reasons about mutable memory. This effect property can be considered as a very limited and coarse version of escape analysis and allow us prove `:consistent`-cy or `:effect_free`-ness even in a presence of accesses or modifications on local mutable allocations in cases when we can prove they are local and don't escape. Separate PRs that actually improve the effect analysis accuracy will follow.
- Loading branch information
Showing
12 changed files
with
265 additions
and
62 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.