]> granicus.if.org Git - clang/commitdiff
[clang][ifs] Dropping older experimental interface stub formats.
authorPuyan Lotfi <puyan@puyan.org>
Thu, 22 Aug 2019 23:44:34 +0000 (23:44 +0000)
committerPuyan Lotfi <puyan@puyan.org>
Thu, 22 Aug 2019 23:44:34 +0000 (23:44 +0000)
I've been working on a new tool, llvm-ifs, for merging interface stub files
generated by clang and I've iterated on my derivative format of TBE to a newer
format. llvm-ifs will only support the new format, so I am going to drop the
older experimental interface stubs formats in this commit to make things
simpler.

Differential Revision: https://reviews.llvm.org/D66573

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@369719 91177308-0d34-0410-b5e6-96231b3b80d8

17 files changed:
include/clang/Frontend/FrontendActions.h
include/clang/Frontend/FrontendOptions.h
lib/Driver/ToolChains/Clang.cpp
lib/Frontend/CompilerInvocation.cpp
lib/Frontend/InterfaceStubFunctionsConsumer.cpp
lib/FrontendTool/ExecuteCompilerInvocation.cpp
test/InterfaceStubs/bad-format.cpp
test/InterfaceStubs/class-template-specialization.cpp
test/InterfaceStubs/externstatic.c
test/InterfaceStubs/function-template-specialization.cpp
test/InterfaceStubs/hidden-class-inheritance.cpp
test/InterfaceStubs/inline.c
test/InterfaceStubs/object.cpp
test/InterfaceStubs/template-namespace-function.cpp
test/InterfaceStubs/virtual.cpp
test/InterfaceStubs/visibility.cpp
test/InterfaceStubs/weak.cpp

index 911d820520d7e4989b67b0d5defe03f2ac4a1b79..89ac20075fa459cddcccc15a08b221bf975ddad9 100644 (file)
@@ -126,19 +126,6 @@ protected:
   bool hasASTFileSupport() const override { return false; }
 };
 
-// Support different interface stub formats this way:
-class GenerateInterfaceYAMLExpV1Action : public GenerateInterfaceStubAction {
-protected:
-  std::unique_ptr<ASTConsumer> CreateASTConsumer(CompilerInstance &CI,
-                                                 StringRef InFile) override;
-};
-
-class GenerateInterfaceTBEExpV1Action : public GenerateInterfaceStubAction {
-protected:
-  std::unique_ptr<ASTConsumer> CreateASTConsumer(CompilerInstance &CI,
-                                                 StringRef InFile) override;
-};
-
 class GenerateInterfaceIfsExpV1Action : public GenerateInterfaceStubAction {
 protected:
   std::unique_ptr<ASTConsumer> CreateASTConsumer(CompilerInstance &CI,
index adee47342ace354550490aa61445e0996c56ba78..09d83adf579b8ad63af759fcb1a2008ea2ca0a6f 100644 (file)
@@ -90,8 +90,6 @@ enum ActionKind {
   GeneratePCH,
 
   /// Generate Interface Stub Files.
-  GenerateInterfaceYAMLExpV1,
-  GenerateInterfaceTBEExpV1,
   GenerateInterfaceIfsExpV1,
 
   /// Only execute frontend initialization.
index 7e420da94f00734f5da9779e8c5029c59762aa99..76d3f623b2eebafeaabdbcaa3281d09bee0a01a5 100644 (file)
@@ -3631,22 +3631,27 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA,
                JA.getType() == types::TY_LTO_BC) {
       CmdArgs.push_back("-emit-llvm-bc");
     } else if (JA.getType() == types::TY_IFS) {
+      StringRef ArgStr =
+          Args.hasArg(options::OPT_iterface_stub_version_EQ)
+              ? Args.getLastArgValue(options::OPT_iterface_stub_version_EQ)
+              : "";
       StringRef StubFormat =
-          llvm::StringSwitch<StringRef>(
-              Args.hasArg(options::OPT_iterface_stub_version_EQ)
-                  ? Args.getLastArgValue(options::OPT_iterface_stub_version_EQ)
-                  : "")
-              .Case("experimental-yaml-elf-v1", "experimental-yaml-elf-v1")
-              .Case("experimental-tapi-elf-v1", "experimental-tapi-elf-v1")
+          llvm::StringSwitch<StringRef>(ArgStr)
               .Case("experimental-ifs-v1", "experimental-ifs-v1")
               .Default("");
 
-      if (StubFormat.empty())
+      if (StubFormat.empty()) {
+        std::string ErrorMessage =
+            "Invalid interface stub format: " + ArgStr.str() +
+            ((ArgStr == "experimental-yaml-elf-v1" ||
+              ArgStr == "experimental-tapi-elf-v1")
+                 ? " is deprecated."
+                 : ".");
         D.Diag(diag::err_drv_invalid_value)
-            << "Must specify a valid interface stub format type using "
-            << "-interface-stub-version=<experimental-tapi-elf-v1 | "
-               "experimental-ifs-v1 | "
-               "experimental-yaml-elf-v1>";
+            << "Must specify a valid interface stub format type, ie: "
+               "-interface-stub-version=experimental-ifs-v1"
+            << ErrorMessage;
+      }
 
       CmdArgs.push_back("-emit-interface-stubs");
       CmdArgs.push_back(
index c0539cda110a909a5f33fc2a7e914207c3169ac8..c45b7517133a755202935143ef4a4c9e7d6c6861 100644 (file)
@@ -1728,25 +1728,28 @@ static InputKind ParseFrontendArgs(FrontendOptions &Opts, ArgList &Args,
     case OPT_emit_pch:
       Opts.ProgramAction = frontend::GeneratePCH; break;
     case OPT_emit_iterface_stubs: {
+      StringRef ArgStr =
+          Args.hasArg(OPT_iterface_stub_version_EQ)
+              ? Args.getLastArgValue(OPT_iterface_stub_version_EQ)
+              : "";
       llvm::Optional<frontend::ActionKind> ProgramAction =
-          llvm::StringSwitch<llvm::Optional<frontend::ActionKind>>(
-              Args.hasArg(OPT_iterface_stub_version_EQ)
-                  ? Args.getLastArgValue(OPT_iterface_stub_version_EQ)
-                  : "")
-              .Case("experimental-yaml-elf-v1",
-                    frontend::GenerateInterfaceYAMLExpV1)
-              .Case("experimental-tapi-elf-v1",
-                    frontend::GenerateInterfaceTBEExpV1)
-              .Case("experimental-ifs-v1",
-                    frontend::GenerateInterfaceIfsExpV1)
+          llvm::StringSwitch<llvm::Optional<frontend::ActionKind>>(ArgStr)
+              .Case("experimental-ifs-v1", frontend::GenerateInterfaceIfsExpV1)
               .Default(llvm::None);
-      if (!ProgramAction)
+      if (!ProgramAction) {
+        std::string ErrorMessage =
+            "Invalid interface stub format: " + ArgStr.str() +
+            ((ArgStr == "experimental-yaml-elf-v1" ||
+              ArgStr == "experimental-tapi-elf-v1")
+                 ? " is deprecated."
+                 : ".");
         Diags.Report(diag::err_drv_invalid_value)
-            << "Must specify a valid interface stub format type using "
-            << "-interface-stub-version=<experimental-tapi-elf-v1 | "
-               "experimental-ifs-v1 | "
-               "experimental-yaml-elf-v1>";
-      Opts.ProgramAction = *ProgramAction;
+            << "Must specify a valid interface stub format type, ie: "
+               "-interface-stub-version=experimental-ifs-v1"
+            << ErrorMessage;
+      } else {
+        Opts.ProgramAction = *ProgramAction;
+      }
       break;
     }
     case OPT_init_only:
@@ -3186,8 +3189,6 @@ static bool isStrictlyPreprocessorAction(frontend::ActionKind Action) {
   case frontend::GenerateModuleInterface:
   case frontend::GenerateHeaderModule:
   case frontend::GeneratePCH:
-  case frontend::GenerateInterfaceYAMLExpV1:
-  case frontend::GenerateInterfaceTBEExpV1:
   case frontend::GenerateInterfaceIfsExpV1:
   case frontend::ParseSyntaxOnly:
   case frontend::ModuleFileInfo:
index cb597c4709e027655a67c0495e8a78ac2a646212..cdf4e6b33b9af5c4a38ec1988897aed02391847b 100644 (file)
@@ -246,114 +246,6 @@ public:
     for (const NamedDecl *ND : v.NamedDecls)
       HandleNamedDecl(ND, Symbols, FromTU);
 
-    auto writeIfoYaml = [this](const llvm::Triple &T,
-                               const MangledSymbols &Symbols,
-                               const ASTContext &context, StringRef Format,
-                               raw_ostream &OS) -> void {
-      OS << "--- !" << Format << "\n";
-      OS << "FileHeader:\n";
-      OS << "  Class:           ELFCLASS";
-      OS << (T.isArch64Bit() ? "64" : "32");
-      OS << "\n";
-      OS << "  Data:            ELFDATA2";
-      OS << (T.isLittleEndian() ? "LSB" : "MSB");
-      OS << "\n";
-      OS << "  Type:            ET_REL\n";
-      OS << "  Machine:         "
-         << llvm::StringSwitch<llvm::StringRef>(T.getArchName())
-                .Case("x86_64", "EM_X86_64")
-                .Case("i386", "EM_386")
-                .Case("i686", "EM_386")
-                .Case("aarch64", "EM_AARCH64")
-                .Case("amdgcn", "EM_AMDGPU")
-                .Case("r600", "EM_AMDGPU")
-                .Case("arm", "EM_ARM")
-                .Case("thumb", "EM_ARM")
-                .Case("avr", "EM_AVR")
-                .Case("mips", "EM_MIPS")
-                .Case("mipsel", "EM_MIPS")
-                .Case("mips64", "EM_MIPS")
-                .Case("mips64el", "EM_MIPS")
-                .Case("msp430", "EM_MSP430")
-                .Case("ppc", "EM_PPC")
-                .Case("ppc64", "EM_PPC64")
-                .Case("ppc64le", "EM_PPC64")
-                .Case("x86", T.isOSIAMCU() ? "EM_IAMCU" : "EM_386")
-                .Case("x86_64", "EM_X86_64")
-                .Default("EM_NONE")
-         << "\nSymbols:\n";
-      for (const auto &E : Symbols) {
-        const MangledSymbol &Symbol = E.second;
-        for (auto Name : Symbol.Names) {
-          OS << "  - Name:            "
-             << (Symbol.ParentName.empty() || Instance.getLangOpts().CPlusPlus
-                     ? ""
-                     : (Symbol.ParentName + "."))
-             << Name << "\n"
-             << "    Type:            STT_";
-          switch (Symbol.Type) {
-          default:
-          case llvm::ELF::STT_NOTYPE:
-            OS << "NOTYPE";
-            break;
-          case llvm::ELF::STT_OBJECT:
-            OS << "OBJECT";
-            break;
-          case llvm::ELF::STT_FUNC:
-            OS << "FUNC";
-            break;
-          }
-          OS << "\n    Binding:         STB_"
-             << ((Symbol.Binding == llvm::ELF::STB_WEAK) ? "WEAK" : "GLOBAL")
-             << "\n";
-        }
-      }
-      OS << "...\n";
-      OS.flush();
-    };
-
-    auto writeIfoElfAbiYaml =
-        [this](const llvm::Triple &T, const MangledSymbols &Symbols,
-               const ASTContext &context, StringRef Format,
-               raw_ostream &OS) -> void {
-      OS << "--- !" << Format << "\n";
-      OS << "TbeVersion: 1.0\n";
-      OS << "Arch: " << T.getArchName() << "\n";
-      OS << "Symbols:\n";
-      for (const auto &E : Symbols) {
-        const MangledSymbol &Symbol = E.second;
-        for (auto Name : Symbol.Names) {
-          OS << "  "
-             << (Symbol.ParentName.empty() || Instance.getLangOpts().CPlusPlus
-                     ? ""
-                     : (Symbol.ParentName + "."))
-             << Name << ": { Type: ";
-          switch (Symbol.Type) {
-          default:
-            llvm_unreachable(
-                "clang -emit-iterface-stubs: Unexpected symbol type.");
-          case llvm::ELF::STT_NOTYPE:
-            OS << "NoType";
-            break;
-          case llvm::ELF::STT_OBJECT: {
-            auto VD = cast<ValueDecl>(E.first)->getType();
-            OS << "Object, Size: "
-               << context.getTypeSizeInChars(VD).getQuantity();
-            break;
-          }
-          case llvm::ELF::STT_FUNC:
-            OS << "Func";
-            break;
-          }
-          if (Symbol.Binding == llvm::ELF::STB_WEAK)
-            OS << ", Weak: true";
-          OS << " }\n";
-        }
-      }
-      OS << "...\n";
-      OS.flush();
-    };
-
     auto writeIfsV1 =
         [this](const llvm::Triple &T, const MangledSymbols &Symbols,
                const ASTContext &context, StringRef Format,
@@ -397,32 +289,11 @@ public:
       OS.flush();
     };
 
-    if (Format == "experimental-yaml-elf-v1")
-      writeIfoYaml(Instance.getTarget().getTriple(), Symbols, context, Format,
-                   *OS);
-    else if (Format == "experimental-ifs-v1")
-      writeIfsV1(Instance.getTarget().getTriple(), Symbols, context, Format,
-                 *OS);
-    else
-      writeIfoElfAbiYaml(Instance.getTarget().getTriple(), Symbols, context,
-                         Format, *OS);
+    assert(Format == "experimental-ifs-v1" && "Unexpected IFS Format.");
+    writeIfsV1(Instance.getTarget().getTriple(), Symbols, context, Format, *OS);
   }
 };
 
-std::unique_ptr<ASTConsumer>
-GenerateInterfaceYAMLExpV1Action::CreateASTConsumer(CompilerInstance &CI,
-                                                    StringRef InFile) {
-  return std::make_unique<InterfaceStubFunctionsConsumer>(
-      CI, InFile, "experimental-yaml-elf-v1");
-}
-
-std::unique_ptr<ASTConsumer>
-GenerateInterfaceTBEExpV1Action::CreateASTConsumer(CompilerInstance &CI,
-                                                   StringRef InFile) {
-  return std::make_unique<InterfaceStubFunctionsConsumer>(
-      CI, InFile, "experimental-tapi-elf-v1");
-}
-
 std::unique_ptr<ASTConsumer>
 GenerateInterfaceIfsExpV1Action::CreateASTConsumer(CompilerInstance &CI,
                                                    StringRef InFile) {
index f9667501614de11c35c1e17134bd5d7868ae974a..e11d50663db70bbbce3df02cffabe8b7d945c13a 100644 (file)
@@ -64,10 +64,6 @@ CreateFrontendBaseAction(CompilerInstance &CI) {
   case GenerateHeaderModule:
     return std::make_unique<GenerateHeaderModuleAction>();
   case GeneratePCH:            return std::make_unique<GeneratePCHAction>();
-  case GenerateInterfaceYAMLExpV1:
-    return std::make_unique<GenerateInterfaceYAMLExpV1Action>();
-  case GenerateInterfaceTBEExpV1:
-    return std::make_unique<GenerateInterfaceTBEExpV1Action>();
   case GenerateInterfaceIfsExpV1:
     return std::make_unique<GenerateInterfaceIfsExpV1Action>();
   case InitOnly:               return std::make_unique<InitOnlyAction>();
index 463f39aadc813c66ac6e84d11077569525772850..f13ea2fc76b31f0cf51418c25efd98a136bcfbb6 100644 (file)
@@ -2,7 +2,38 @@
 // RUN: not %clang -target x86_64-linux-gnu -o - -emit-interface-stubs \
 // RUN: -interface-stub-version=bar-format %s 2>&1 | FileCheck %s
 
+// RUN: not %clang -target x86_64-linux-gnu -o - -emit-interface-stubs \
+// RUN: -interface-stub-version=experimental-tapi-elf-v1 %s 2>&1 | \
+// RUN: FileCheck -check-prefix=CHECK-TAPI-DEPRECATED %s
+
+// RUN: not %clang -target x86_64-linux-gnu -o - -emit-interface-stubs \
+// RUN: -interface-stub-version=experimental-yaml-elf-v1 %s 2>&1 | \
+// RUN: FileCheck -check-prefix=CHECK-YAML-DEPRECATED %s
+
+// RUN: not %clang_cc1 -target x86_64-linux-gnu -o - -emit-interface-stubs \
+// RUN: -interface-stub-version=bar-format %s 2>&1 | FileCheck %s
+
+// RUN: not %clang_cc1 -target x86_64-linux-gnu -o - -emit-interface-stubs \
+// RUN: -interface-stub-version=experimental-tapi-elf-v1 %s 2>&1 | \
+// RUN: FileCheck -check-prefix=CHECK-TAPI-DEPRECATED %s
+
+// RUN: not %clang_cc1 -target x86_64-linux-gnu -o - -emit-interface-stubs \
+// RUN: -interface-stub-version=experimental-yaml-elf-v1 %s 2>&1 | \
+// RUN: FileCheck -check-prefix=CHECK-YAML-DEPRECATED %s
+
 // CHECK: error: invalid value
-// CHECK: '-interface-stub-version=<experimental-tapi-elf-v1 |
-// CHECK: experimental-yaml-elf-v1>' in 'Must specify a valid interface
-// CHECK: stub format type using
+// CHECK: 'Invalid interface stub format: bar-format.' in 'Must specify a
+// CHECK: valid interface stub format type, ie:
+// CHECK: -interface-stub-version=experimental-ifs-v1'
+
+// CHECK-TAPI-DEPRECATED: error: invalid value
+// CHECK-TAPI-DEPRECATED: 'Invalid interface stub format:
+// CHECK-TAPI-DEPRECATED: experimental-tapi-elf-v1 is deprecated.' in 'Must
+// CHECK-TAPI-DEPRECATED: specify a valid interface stub format type, ie:
+// CHECK-TAPI-DEPRECATED: -interface-stub-version=experimental-ifs-v1'
+
+// CHECK-YAML-DEPRECATED: error: invalid value
+// CHECK-YAML-DEPRECATED: 'Invalid interface stub format:
+// CHECK-YAML-DEPRECATED: experimental-yaml-elf-v1 is deprecated.' in 'Must
+// CHECK-YAML-DEPRECATED: specify a valid interface stub format type, ie:
+// CHECK-YAML-DEPRECATED: -interface-stub-version=experimental-ifs-v1'
index 53baa3490f76b00fda8462b698f12c6e168b4685..29e459390495ae70da702c37177a5613984d7f8c 100644 (file)
@@ -1,10 +1,10 @@
 // REQUIRES: x86-registered-target
 // RUN: %clang -target x86_64-unknown-linux-gnu -o - -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-tapi-elf-v1 %s | \
+// RUN: -interface-stub-version=experimental-ifs-v1 %s | \
 // RUN: FileCheck -check-prefix=CHECK-TAPI %s
 
 // RUN: %clang -target x86_64-unknown-linux-gnu -o - -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-tapi-elf-v1 %s | \
+// RUN: -interface-stub-version=experimental-ifs-v1 %s | \
 // RUN: FileCheck -check-prefix=CHECK-TAPI2 %s
 // RUN: %clang -target x86_64-unknown-linux-gnu -o - -c %s | \
 // RUN: llvm-readelf -s - 2>&1 | \
index 832b4b3aaf8acac621c0100815a36cb9a20feda5..bc1aef477bcd519c74d6f3d4b94d9b29e2435c1d 100644 (file)
@@ -1,21 +1,21 @@
 // REQUIRES: x86-registered-target
 // RUN: %clang -DSTORAGE="extern" -target x86_64-unknown-linux-gnu -o - \
 // RUN: -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-yaml-elf-v1 -std=c99 -xc %s | \
+// RUN: -interface-stub-version=experimental-ifs-v1 -std=c99 -xc %s | \
 // RUN: FileCheck -check-prefix=CHECK-EXTERN %s
 // RUN: %clang -DSTORAGE="extern" -target x86_64-linux-gnu -O0 -o - -c -std=c99 \
 // RUN: -xc %s | llvm-nm - 2>&1 | FileCheck -check-prefix=CHECK-EXTERN %s
 
 // RUN: %clang -DSTORAGE="extern" -target x86_64-unknown-linux-gnu -o - \
 // RUN: -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-yaml-elf-v1 -std=c99 -xc %s | \
+// RUN: -interface-stub-version=experimental-ifs-v1 -std=c99 -xc %s | \
 // RUN: FileCheck -check-prefix=CHECK-EXTERN2 %s
 // RUN: %clang -DSTORAGE="extern" -target x86_64-linux-gnu -O0 -o - -c -std=c99 \
 // RUN: -xc %s | llvm-nm - 2>&1 | FileCheck -check-prefix=CHECK-EXTERN2 %s
 
 // RUN: %clang -DSTORAGE="static" -target x86_64-unknown-linux-gnu -o - \
 // RUN: -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-yaml-elf-v1 -std=c99 -xc %s | \
+// RUN: -interface-stub-version=experimental-ifs-v1 -std=c99 -xc %s | \
 // RUN: FileCheck -check-prefix=CHECK-STATIC %s
 // RUN: %clang -DSTORAGE="static" -target x86_64-linux-gnu -O0 -o - -c -std=c99 \
 // RUN: -xc %s | llvm-nm - 2>&1 | FileCheck -check-prefix=CHECK-STATIC %s
index f01b4311da1fe3b44e0aec92e43b4b90930527b0..f6e5c87e7f442510d30f05cdaf16b76fa3b02541 100644 (file)
@@ -1,14 +1,14 @@
 // REQUIRES: x86-registered-target
 // RUN: %clang -target x86_64-unknown-linux-gnu -o - -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-tapi-elf-v1 %s | FileCheck %s
+// RUN: -interface-stub-version=experimental-ifs-v1 %s | FileCheck %s
 
 // RUN: %clang -target x86_64-unknown-linux-gnu -o - -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-tapi-elf-v1 \
+// RUN: -interface-stub-version=experimental-ifs-v1 \
 // RUN: -DUSE_TEMPLATE_FUNCTION=1 %s | \
 // RUN: FileCheck -check-prefix=CHECK-USES-TEMPLATE-FUNCTION %s
 
 // RUN: %clang -target x86_64-unknown-linux-gnu -o - -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-tapi-elf-v1 \
+// RUN: -interface-stub-version=experimental-ifs-v1 \
 // RUN: -DSPECIALIZE_TEMPLATE_FUNCTION=1 %s | \
 // RUN: FileCheck -check-prefix=CHECK-SPECIALIZES-TEMPLATE-FUNCTION %s
 
index 9152914dbd85edd9bfb21eac73b80e34c9c6f43a..8df165b6de9153403f27c494e41004f7b3e9822d 100644 (file)
@@ -1,6 +1,6 @@
 // REQUIRES: x86-registered-target
 // RUN: %clang -target x86_64-unknown-linux-gnu -o - -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-tapi-elf-v1 \
+// RUN: -interface-stub-version=experimental-ifs-v1 \
 // RUN: -DPARENT_CLASS_VISIBILITY="" -DCHILD_CLASS_VISIBILITY="" \
 // RUN: -DPARENT_METHOD_VISIBILITY="" -DCHILD_METHOD_VISIBILITY="" %s | \
 // RUN: FileCheck -check-prefix=CHECK-X %s
 // RUN: FileCheck -check-prefix=CHECK-X-RE %s
 
 // RUN: %clang -target x86_64-unknown-linux-gnu -o - -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-tapi-elf-v1 \
+// RUN: -interface-stub-version=experimental-ifs-v1 \
 // RUN: -DPARENT_CLASS_VISIBILITY=HIDDEN -DCHILD_CLASS_VISIBILITY="" \
 // RUN: -DPARENT_METHOD_VISIBILITY="" -DCHILD_METHOD_VISIBILITY="" %s | \
 // RUN: FileCheck -check-prefix=CHECK-HP %s
 // RUN: %clang -target x86_64-unknown-linux-gnu -o - -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-tapi-elf-v1 \
+// RUN: -interface-stub-version=experimental-ifs-v1 \
 // RUN: -DPARENT_CLASS_VISIBILITY=HIDDEN -DCHILD_CLASS_VISIBILITY="" \
 // RUN: -DPARENT_METHOD_VISIBILITY="" -DCHILD_METHOD_VISIBILITY="" %s | \
 // RUN: FileCheck -check-prefix=CHECK-HP2 %s
 // RUN: FileCheck -check-prefix=CHECK-HP-RE %s
 
 // RUN: %clang -target x86_64-unknown-linux-gnu -o - -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-tapi-elf-v1 \
+// RUN: -interface-stub-version=experimental-ifs-v1 \
 // RUN: -DPARENT_CLASS_VISIBILITY="" -DCHILD_CLASS_VISIBILITY=HIDDEN \
 // RUN: -DPARENT_METHOD_VISIBILITY="" -DCHILD_METHOD_VISIBILITY="" %s | \
 // RUN: FileCheck -check-prefix=CHECK-HC %s
 // RUN: %clang -target x86_64-unknown-linux-gnu -o - -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-tapi-elf-v1 \
+// RUN: -interface-stub-version=experimental-ifs-v1 \
 // RUN: -DPARENT_CLASS_VISIBILITY="" -DCHILD_CLASS_VISIBILITY=HIDDEN \
 // RUN: -DPARENT_METHOD_VISIBILITY="" -DCHILD_METHOD_VISIBILITY="" %s | \
 // RUN: FileCheck -check-prefix=CHECK-HC2 %s
@@ -43,7 +43,7 @@
 // RUN: FileCheck -check-prefix=CHECK-HC-RE %s
 
 // RUN: %clang -target x86_64-unknown-linux-gnu -o - -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-tapi-elf-v1 \
+// RUN: -interface-stub-version=experimental-ifs-v1 \
 // RUN: -DPARENT_CLASS_VISIBILITY=HIDDEN -DCHILD_CLASS_VISIBILITY=HIDDEN \
 // RUN: -DPARENT_METHOD_VISIBILITY="" -DCHILD_METHOD_VISIBILITY="" %s | \
 // RUN: FileCheck -check-prefix=CHECK-HP-HC %s
index 40dc455b131acccce25cc7d09986c7750822bc7e..e32b4e100960dae0a1aea5d9b21a14916af9fcec 100644 (file)
@@ -1,14 +1,14 @@
 // REQUIRES: x86-registered-target
 // RUN: %clang -DINLINE=inline -target x86_64-unknown-linux-gnu -o - \
 // RUN: -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-yaml-elf-v1 -std=gnu89 -xc %s | \
+// RUN: -interface-stub-version=experimental-ifs-v1 -std=gnu89 -xc %s | \
 // RUN: FileCheck -check-prefix=CHECK-GNU %s
 // RUN: %clang -DINLINE=inline -target x86_64-linux-gnu -O0 -o - -c \
 // RUN: -std=gnu89 -xc %s | llvm-nm - | FileCheck -check-prefix=CHECK-GNU %s
 
 // RUN: %clang -DINLINE="__attribute__((always_inline))" \
 // RUN: -target x86_64-unknown-linux-gnu -o - -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-yaml-elf-v1 -xc %s | \
+// RUN: -interface-stub-version=experimental-ifs-v1 -xc %s | \
 // RUN: FileCheck -check-prefix=CHECK-GNU %s
 // RUN: %clang -DINLINE="__attribute__((always_inline))" \
 // RUN: -target x86_64-linux-gnu -O0 -o - -c -xc %s | \
 
 // RUN: %clang -DINLINE=inline -target x86_64-unknown-linux-gnu -o - \
 // RUN: -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-yaml-elf-v1 -std=c99 -xc %s | \
+// RUN: -interface-stub-version=experimental-ifs-v1 -std=c99 -xc %s | \
 // RUN: FileCheck -check-prefix=CHECK-STD %s
 // RUN: %clang -DINLINE=inline -target x86_64-linux-gnu -O0 -o - -c -std=c99 \
 // RUN: -xc %s | llvm-nm - 2>&1 | FileCheck -check-prefix=CHECK-STD %s
 
 // RUN: %clang -DINLINE="__attribute__((noinline))" \
 // RUN: -target x86_64-unknown-linux-gnu -o - -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-yaml-elf-v1 -std=c99 -xc %s | \
+// RUN: -interface-stub-version=experimental-ifs-v1 -std=c99 -xc %s | \
 // RUN: FileCheck -check-prefix=CHECK-NOINLINE %s
 // RUN: %clang -DINLINE="__attribute__((noinline))" -target x86_64-linux-gnu \
 // RUN: -O0 -o - -c -std=c99 -xc %s | llvm-nm - 2>&1 | \
@@ -31,7 +31,7 @@
 
 // RUN: %clang -DINLINE="static" -target x86_64-unknown-linux-gnu -o - \
 // RUN: -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-yaml-elf-v1 -std=c99 -xc %s | \
+// RUN: -interface-stub-version=experimental-ifs-v1 -std=c99 -xc %s | \
 // RUN: FileCheck -check-prefix=CHECK-STATIC %s
 // RUN: %clang -DINLINE="static" -target x86_64-linux-gnu -O0 -o - -c \
 // RUN: -std=c99 -xc %s | llvm-nm - 2>&1 | \
@@ -51,11 +51,11 @@ INLINE int foo() {
 }
 
 // RUN: %clang -DINLINE=inline -target x86_64-linux-gnu -o - \
-// RUN: -emit-interface-stubs -interface-stub-version=experimental-tapi-elf-v1 \
+// RUN: -emit-interface-stubs -interface-stub-version=experimental-ifs-v1 \
 // RUN: -std=gnu89 -xc %s | FileCheck -check-prefix=CHECK-TAPI %s
 
 // RUN: %clang -DINLINE=inline -target x86_64-linux-gnu -o - \
-// RUN: -emit-interface-stubs -interface-stub-version=experimental-tapi-elf-v1 \
+// RUN: -emit-interface-stubs -interface-stub-version=experimental-ifs-v1 \
 // RUN: -std=gnu89 -xc %s | FileCheck -check-prefix=CHECK-SYMBOLS %s
 // RUN: %clang -DINLINE=inline -target x86_64-linux-gnu -o - \
 // RUN: -c -std=gnu89 -xc %s | llvm-nm - 2>&1 | \
index 090a29d1c94a9722de790e091c6db3733d9d09cf..7f11fe6bf3cbc617cf9f1fc770873f7b9f9050ef 100644 (file)
@@ -1,10 +1,10 @@
 // REQUIRES: x86-registered-target
 // RUN: %clang -target x86_64-unknown-linux-gnu -o - -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-tapi-elf-v1 %s | \
+// RUN: -interface-stub-version=experimental-ifs-v1 %s | \
 // RUN: FileCheck -check-prefix=CHECK-TAPI %s
 
 // RUN: %clang -target x86_64-unknown-linux-gnu -o - -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-tapi-elf-v1 %s | \
+// RUN: -interface-stub-version=experimental-ifs-v1 %s | \
 // RUN: FileCheck -check-prefix=CHECK-SYMBOLS %s
 // RUN: %clang -target x86_64-unknown-linux-gnu -o - -c %s | llvm-nm - 2>&1 | \
 // RUN: FileCheck -check-prefix=CHECK-SYMBOLS %s
index 41e5fdefe270c2fa41647275021e8619a572c00d..4956525b4060f37480d808ce1c27e5ba9d051608 100644 (file)
@@ -1,6 +1,6 @@
 // REQUIRES: x86-registered-target
 // RUN: %clang -target x86_64-unknown-linux-gnu -o - -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-tapi-elf-v1 %s | \
+// RUN: -interface-stub-version=experimental-ifs-v1 %s | \
 // RUN: FileCheck %s
 
 // RUN: %clang -target x86_64-unknown-linux-gnu -o - -c %s | llvm-nm - 2>&1 | \
index 0fdb604921e8a53cd9e3f08c0412fb0c5e105e6e..ec405770be3fb1d5898b20a55bfbb12e3cabf2a7 100644 (file)
@@ -1,9 +1,9 @@
 // REQUIRES: x86-registered-target
 // RUN: %clang -target x86_64-unknown-linux-gnu -o - -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-tapi-elf-v1 %s | \
+// RUN: -interface-stub-version=experimental-ifs-v1 %s | \
 // RUN: FileCheck -check-prefix=CHECK-TAPI %s
 // RUN: %clang -target x86_64-unknown-linux-gnu -o - -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-tapi-elf-v1 %s | \
+// RUN: -interface-stub-version=experimental-ifs-v1 %s | \
 // RUN: FileCheck -check-prefix=CHECK-TAPI2 %s
 // RUN: %clang -target x86_64-unknown-linux-gnu -o - -c %s | \
 // RUN: llvm-readelf -s - 2>&1 | FileCheck -check-prefix=CHECK-SYMBOLS %s
index 137c593ff628835fd04509d72715608920c9b4f1..1f0e921f5197ec576c10ecceb3cf64723b9989a9 100644 (file)
@@ -1,26 +1,26 @@
 // REQUIRES: x86-registered-target
 // RUN: %clang -target x86_64-unknown-linux-gnu -o - -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-tapi-elf-v1 -fvisibility=hidden \
+// RUN: -interface-stub-version=experimental-ifs-v1 -fvisibility=hidden \
 // RUN: %s | FileCheck --check-prefix=CHECK-CMD-HIDDEN %s
 
 // RUN: %clang -target x86_64-unknown-linux-gnu -o - -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-yaml-elf-v1 -fvisibility=hidden \
+// RUN: -interface-stub-version=experimental-ifs-v1 -fvisibility=hidden \
 // RUN: %s | FileCheck --check-prefix=CHECK-CMD-HIDDEN %s
 
 // RUN: %clang -target x86_64-unknown-linux-gnu -o - -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-tapi-elf-v1 %s | \
+// RUN: -interface-stub-version=experimental-ifs-v1 %s | \
 // RUN: FileCheck --check-prefix=CHECK-CMD %s
 
 // RUN: %clang -target x86_64-unknown-linux-gnu -o - -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-yaml-elf-v1 %s | \
+// RUN: -interface-stub-version=experimental-ifs-v1 %s | \
 // RUN: FileCheck --check-prefix=CHECK-CMD %s
 
 // RUN: %clang -target x86_64-unknown-linux-gnu -o - -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-tapi-elf-v1 %s | \
+// RUN: -interface-stub-version=experimental-ifs-v1 %s | \
 // RUN: FileCheck --check-prefix=CHECK-CMD2 %s
 
 // RUN: %clang -target x86_64-unknown-linux-gnu -o - -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-yaml-elf-v1 %s | \
+// RUN: -interface-stub-version=experimental-ifs-v1 %s | \
 // RUN: FileCheck --check-prefix=CHECK-CMD2 %s
 
 // RUN: %clang -target x86_64-unknown-linux-gnu -o - -c %s | llvm-readelf -s - 2>&1 | \
index 50bae580f018351e58c1f1fc9531e96561a3e1b1..13b7e5aa29383b70fb13dd1217f033ec58f53457 100644 (file)
@@ -1,12 +1,8 @@
 // REQUIRES: x86-registered-target
 // RUN: %clang -target x86_64-linux-gnu -o - -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-tapi-elf-v1 %s | \
+// RUN: -interface-stub-version=experimental-ifs-v1 %s | \
 // RUN: FileCheck %s
 
-// RUN: %clang -target x86_64-linux-gnu -o - -emit-interface-stubs \
-// RUN: -interface-stub-version=experimental-yaml-elf-v1 %s | \
-// RUN: FileCheck --check-prefix=CHECK-YAML %s
-
 // RUN: %clang -target x86_64-unknown-linux-gnu -o - -c %s | llvm-nm - 2>&1 | \
 // RUN: FileCheck -check-prefix=CHECK-SYMBOLS %s
 
 // CHECK-DAG:  _Z8weakFuncv: { Type: Func, Weak: true }
 // CHECK-DAG:  _Z10strongFuncv: { Type: Func }
 
-// CHECK-YAML: Symbols:
-// CHECK-YAML-DAG:   - Name:            _Z8weakFuncv
-// CHECK-YAML-DAG:     Type:            STT_FUNC
-// CHECK-YAML-DAG:     Binding:         STB_WEAK
-// CHECK-YAML-DAG:   - Name:            _Z10strongFuncv
-// CHECK-YAML-DAG:     Type:            STT_FUNC
-// CHECK-YAML-DAG:     Binding:         STB_GLOBAL
-
 // CHECK-SYMBOLS-DAG: _Z10strongFuncv
 // CHECK-SYMBOLS-DAG: _Z8weakFuncv
 __attribute__((weak)) void weakFunc() {}