Run type propagation after inliner only when needed.

Currently we run a type propagation pass unconditionally after the
inliner. This change looks at the returned value (if any) and runs a
minimal type propagation only if its type has changed.

Change-Id: I0dd72bd481219081e8a978d2632426afc980d73a
7 files changed