-*- text -*-

Pointer analysis to-do list
===========================

CONSTRAINT GENERATION:
- reflection intrinsics
- unsafe.Pointer conversions.  Three options:
  1) unsoundly (but type-safely) treat p=unsafe.Pointer(x) conversions as
     allocations, losing aliases.  This is what's currently implemented.
  2) unsoundly (but type-safely) treat p=unsafe.Pointer(x) and T(p)
     conversions as interface boxing and unboxing operations.  
     This may preserve some aliasing relations at little cost.
  3) soundly track physical field offsets.  (Summarise dannyb's email here.)
     A downside is that we can't keep the identity field of struct
     allocations that identifies the object.    

PRESOLVER OPTIMISATIONS
- use HVN, HRU, LE, PE, HCD, LCD.

SOLVER:
- use BDDs and/or sparse bitvectors for ptsets
- use sparse bitvectors for graph edges
- use BDD-based relational composition for e.g. offset computations.
- experiment with different worklist algorithms:
   priority queue (solver visit-time order)
   red-black tree (node id order)
   double-ended queue (insertion order)
   fast doubly-linked list (See Zhanh et al PLDI'13)
     (insertion order with fast membership test)
  dannyb recommends sparse bitmap.
