Skip to content

Commit

Permalink
include EscapeInfo in documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
aviatesk committed Jan 22, 2022
1 parent 1d8f4ca commit e319b2f
Show file tree
Hide file tree
Showing 3 changed files with 4 additions and 3 deletions.
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -292,6 +292,7 @@ it is more ideal if it runs once and succeeding optimization passes incrementall
```@docs
Core.Compiler.EscapeAnalysis.analyze_escapes
Core.Compiler.EscapeAnalysis.EscapeState
Core.Compiler.EscapeAnalysis.EscapeInfo
Core.Compiler.EscapeAnalysis.cache_escapes!
```
Expand Down
4 changes: 2 additions & 2 deletions src/EAUtils.jl
Original file line number Diff line number Diff line change
Expand Up @@ -105,8 +105,8 @@ The symbols in the side of each call argument and SSA statements represents the
- `✓`: this value never escapes (`has_no_escape(result.state[x])` holds)
- `↑`: this value can escape to the caller via return (`has_return_escape(result.state[x])` holds)
- `X`: this value can escape to somewhere the escape analysis can't reason about like escapes to a global memory (`has_all_escape(result.state[x])` holds)
- `*`: this value's escape state is between the `ReturnEscape` and `AllEscape` in the `EscapeInfo`, e.g. it has unhandled `ThrownEscape`
and additional `′` indicates that field analysis has been done successfully on that value.
- `*`: this value's escape state is between the `ReturnEscape` and `AllEscape` in the lattice of [`EscapeInfo`](@ref), e.g. it has unhandled `ThrownEscape`
- `′`: this value has additional field/aliasing information in its `AliasInfo` property
For testing, escape information of each call argument and SSA value can be inspected programmatically as like:
```julia
Expand Down
2 changes: 1 addition & 1 deletion src/EscapeAnalysis.jl
Original file line number Diff line number Diff line change
Expand Up @@ -388,7 +388,7 @@ const AliasSet = IntDisjointSet{Int}
"""
estate::EscapeState
Extended lattice that maps arguments and SSA values to escape information represented as `EscapeInfo`.
Extended lattice that maps arguments and SSA values to escape information represented as [`EscapeInfo`](@ref).
Escape information imposed on SSA IR element `x` can be retrieved by `estate[x]`.
"""
struct EscapeState
Expand Down

0 comments on commit e319b2f

Please sign in to comment.