Skip to content

Commit

Permalink
analyze: run equiv pass before pointee (#1173)
Browse files Browse the repository at this point in the history
This branch changes the order of analysis passes to run the equivalence
class analysis and `PointerId` renumbering before running the pointee
type analysis. In particular, this improves the pointee results in cases
involving `fresh` references, such as this new test case:

```Rust
let mut p = 0 as *mut libc::c_void;
let fresh = &mut p;
*fresh = malloc(4);
```

Most of the changes here are refactorings to move specific analysis
passes from `run()` into helper functions, which makes them easier to
reorder.
  • Loading branch information
spernsteiner authored Dec 3, 2024
2 parents a0850b1 + 7013b6d commit ecd1cbc
Show file tree
Hide file tree
Showing 6 changed files with 411 additions and 236 deletions.
Loading

0 comments on commit ecd1cbc

Please sign in to comment.