This is basically the same bug as in r260434 again. SymbolFileDWARF::FindTypes has exponential worst-case when digging through dependency DAG of .pcms because each object file and pcm may depend on an already-visited .pcm, which may again have dependencies. Fixed here by carrying a set of already visited SymbolFiles around.
rdar://problem/56993424