The addEarlyAsPossiblePasses target callback can only accept function passes. This patch extends the functionality to support module passes as well.
Default argument PMT_FunctionPassManager is added until clang's BackendUtil.cpp is updated as well, then it can be removed.