561 B
561 B
algorithm
// Every function pointer has a set contain the targets it's alias, the set is
// changed use static analysis of GCC can konwn it.
for every function pointer which has indirect call
legal_set = pointer alias set // changed along with reachable functions
if (legal_set->is_updated && function pointer used as indirect call)
compute new hash depened on the future of item of current legal_set
&& insert at every item of legal_set
// Now we have a new hash
live long and prosper.`