Remove virtual modifier and add override modifier.
Use nullptr instead of NULL.
Do not use "using namespace std;", as per LLVM coding standards.
Simplify some uses of map/set's find() method to use count() instead.
Simplify code in SafepointIRVerifier::runOnFunction():

Avoid construction of extra set "nowvalid".  Move construction of
"invalid" set to earlier in this function and remove valid Values from
it.
Simplify code in SafepointMachineVerifier::runOnMachineFunction():

Avoid construction of extra set "validByDef".  Move construction of
"invalid" set to earlier in this function and remove valid registers
from it.
Add static modifier to command-line option definitions.
Simplify some code using iterators.

* Replace std::distance(X.begin(), X.end()) -> X.size()
* Replace X.begin() == X.end() -> X.empty()
* Prefer preincrement, as recommended by LLVM Coding Standards
Move "check for function attribute" functionality in its own function.
Remove redundant check for empty function.