1:OUT[ENTRY]=∅
2:for each basic block B∈V(CFG)−{ENTRY} do
3:OUT[B]=∅
4:end for
5:Let Worklist be a Set of all basic blocks.
6:while Worklist is not empty do
7:Pick a basic block B from Worklist.
8:temp=OUT[B]
9:IN[B]=P∈pre(B)⋃OUT[P]
10:OUT[B]=genB∪(IN[B]−killB)
11:if temp=OUT[B] then
12:Add all successors of B to Worklist.
13:end if
14:end while