Skip to content

Commit a911eee

Browse files
authored
Thread safety analysis: Allocate FactEntrys with BumpPtrAllocator (#149660)
The FactManager managing the FactEntrys stays alive for the analysis of a single function. We are already using that by allocating TIL S-expressions via BumpPtrAllocator. We can do the same with FactEntrys. If we allocate the facts in an arena, we won't get destructor calls for them, and they better be trivially destructible. This required replacing the SmallVector member of ScopedLockableFactEntry with TrailingObjects. FactEntrys are now passed around by plain pointer. However, to hide the allocation of TrailingObjects from users, we introduce `create` methods, and this allows us to make the constructors private.
1 parent 0433e1e commit a911eee

File tree

1 file changed

+145
-87
lines changed

1 file changed

+145
-87
lines changed

0 commit comments

Comments
 (0)