[Passes][GOT] Split perform() into small predicate functions for readability sake.

Reviewers: shankarke

CC: llvm-commits

Differential Revision: http://llvm-reviews.chandlerc.com/D988