Class that represents the set of memory nodes that may be referenced and/or modified by some operation.
Memory nodes that are marked constant, or memory that is provably never stored to, can be omitted from all ModRefSets.
Memory nodes can also be compressed into the external node. Let A be a memory node. If the following implications hold in every ModRefSet in a function F:
- A is marked "Ref" -> External is marked "Ref"
- A is marked "Mod" -> External is marked "Mod" Then A can be omitted from all ModRefSets in F. Operations on A will still be sequentialized by the state edge representing the external node. Implementations of ModRefSummarizers should create subclasses of this class.
Definition at line 113 of file ModRefSummary.hpp.