bool add_base(PointsToNode* base) { return _bases.append_if_missing(base); }
bool add_use(PointsToNode* use) { return _uses.append_if_missing(use); }
// Mark base edge use to distinguish from stored value edge. bool add_base_use(FieldNode* use) { return _uses.append_if_missing((PointsToNode*)((intptr_t)use + 1)); }
bool add_edge(PointsToNode* edge) { return _edges.append_if_missing(edge); }