Reproducer and errors:
lookupModule was falling back to loadSubdirectoryModuleMaps when it couldn't
find ModuleName in (proper) search paths. This was causing iteration over all
files in the search path subdirectories for example "/usr/include/foobar" in
Users don't expect Clang to load modulemaps in subdirectories implicitly, and
also the disk access is not cheap.
if (ModMap.getLangOpts().ObjC1) is because I heard that this
subdirectory autoloading was supposed to happen only with ObjC.