[PATCH] D28845: Prototype of modules codegen
David Blaikie via cfe-commits
cfe-commits at lists.llvm.org
Tue Jan 24 19:42:05 PST 2017
Richard: This ought to be ready for another round of review at this point,
I Think.
Got test cases (showing opt and non-opt behavior, direct and indirect
modular dependencies, unused modular code, etc - might need some more
comments?), flag, moved the linkage code to GetGVALinkageForFunction.
One oddity was that LangOpts in the ModuleManager was a separate LangOpts
than elsewhere - perhaps you know what the deal is there? Maybe I
shouldn't've been using that LangOpts to detect ModularCodegen? (I
propagated it through the ModuleManager ctor so it would work at the moment)
Also naming - ModularCodegen? -fmodule-codegen? EK_ReplyHazy? ;) Open to
ideas about any of those, and any others that stand out.
(future work: internal linkage functions (need to be weak_odr and have a
proper mangling, possibly with the module name), variables (static locals,
etc), global initializers, type debug info, ... )
Thanks!
On Tue, Jan 24, 2017 at 7:39 PM David Blaikie via Phabricator via
cfe-commits <cfe-commits at lists.llvm.org> wrote:
> dblaikie updated this revision to Diff 85686.
> dblaikie added a comment.
>
> - Add test coverage
>
>
> https://reviews.llvm.org/D28845
>
> Files:
> include/clang/AST/ASTContext.h
> include/clang/AST/ExternalASTSource.h
> include/clang/Basic/LangOptions.def
> include/clang/Basic/Module.h
> include/clang/Driver/CC1Options.td
> include/clang/Serialization/ASTBitCodes.h
> include/clang/Serialization/ASTReader.h
> include/clang/Serialization/ASTWriter.h
> lib/AST/ASTContext.cpp
> lib/AST/ExternalASTSource.cpp
> lib/Basic/Module.cpp
> lib/CodeGen/CodeGenModule.cpp
> lib/Frontend/CompilerInvocation.cpp
> lib/Lex/ModuleMap.cpp
> lib/Serialization/ASTReader.cpp
> lib/Serialization/ASTWriter.cpp
> lib/Serialization/ASTWriterDecl.cpp
> test/Modules/Inputs/codegen/bar.h
> test/Modules/Inputs/codegen/bar.modulemap
> test/Modules/Inputs/codegen/foo.h
> test/Modules/Inputs/codegen/foo.modulemap
> test/Modules/Inputs/codegen/use.cpp
> test/Modules/codegen.test
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20170125/c6d80e1e/attachment.html>
More information about the cfe-commits
mailing list