This document presents an algorithm for interprocedural constant propagation. The algorithm determines which variables will have constant values when procedures are invoked. It models each procedure with functions that describe the values of variables at call sites based on the values of formal parameters. The algorithm associates a lattice with each procedure entry point to represent possible variable values. It iteratively updates the lattices by propagating constants between procedures using the modeling functions until a fixed point is reached. The precision of constants identified depends on the precision of modeling individual procedures.