summaryrefslogtreecommitdiffstats
path: root/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
diff options
context:
space:
mode:
authorPuyan Lotfi <puyan@puyan.org>2019-08-22 23:29:22 +0000
committerPuyan Lotfi <puyan@puyan.org>2019-08-22 23:29:22 +0000
commitd24184591fb7223fe6fea724be901ee501bf1cc3 (patch)
tree87ae017316348bb0afa4d4ebd845b001dd922b6b /clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
parentd6c1c7bfb68bc4158879e64a24115042c814c07a (diff)
downloadbcm5719-llvm-d24184591fb7223fe6fea724be901ee501bf1cc3.tar.gz
bcm5719-llvm-d24184591fb7223fe6fea724be901ee501bf1cc3.zip
[clang][ifs] New interface stubs format (llvm triple based).
After posting llvm-ifs on phabricator, I made some progress in hardening up how I think the format for Interface Stubs should look. There are a number of things I think the TBE format was missing (no endianness, no info about the Object Format because it assumes ELF), so I have added those and broken off from being as similar to the TBE schema. In a subsequent commit I can drop the other formats. An example of how The format will look is as follows: --- !experimental-ifs-v1 IfsVersion: 1.0 Triple: x86_64-unknown-linux-gnu ObjectFileFormat: ELF Symbols: _Z9nothiddenv: { Type: Func } _Z10cmdVisiblev: { Type: Func } ... The format is still marked experimental. Differential Revision: https://reviews.llvm.org/D66446 llvm-svn: 369715
Diffstat (limited to 'clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp')
-rw-r--r--clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp b/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
index 9cbfe70c70d..f9667501614 100644
--- a/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
+++ b/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
@@ -68,6 +68,8 @@ CreateFrontendBaseAction(CompilerInstance &CI) {
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>();
case ParseSyntaxOnly: return std::make_unique<SyntaxOnlyAction>();
case ModuleFileInfo: return std::make_unique<DumpModuleInfoAction>();
OpenPOWER on IntegriCloud