Module: emit initializers in submodules when importing the parent module.

When importing the parent module, module initializers in submodules should
be emitted.

rdar://28740482

llvm-svn: 284263
diff --git a/clang/test/Modules/objc-initializer.m b/clang/test/Modules/objc-initializer.m
index 90cc182..adb7a06 100644
--- a/clang/test/Modules/objc-initializer.m
+++ b/clang/test/Modules/objc-initializer.m
@@ -1,8 +1,14 @@
 // RUN: rm -rf %t
 // RUN: %clang_cc1 -fmodules-cache-path=%t -fmodules -fimplicit-module-maps -I %S/Inputs/objc-initializer %s -emit-llvm -o - -fobjc-arc | FileCheck %s
+// RUN: %clang_cc1 -fmodules-cache-path=%t -fmodules -fimplicit-module-maps -I %S/Inputs/objc-initializer %s -emit-llvm -o - -fobjc-arc -DIMPORT_TOP | FileCheck %s
 // CHECK: kSimDeviceIOGetInterface = internal constant {{.*}} bitcast
 
+#ifdef IMPORT_TOP
+@import X;
+#else
 #import <X.h>
+#endif
+
 void test2(const NSString*);
 void test() {
   test2(kSimDeviceIOGetInterface);