r233117 - [Modules] Stop creating timestamps for the modules cache and trying to
David Blaikie
dblaikie at gmail.com
Tue Mar 24 14:55:26 PDT 2015
On Tue, Mar 24, 2015 at 2:44 PM, Chandler Carruth <chandlerc at gmail.com>
wrote:
> Author: chandlerc
> Date: Tue Mar 24 16:44:25 2015
> New Revision: 233117
>
> URL: http://llvm.org/viewvc/llvm-project?rev=233117&view=rev
> Log:
> [Modules] Stop creating timestamps for the modules cache and trying to
> prune it when we have disabled implicit module generation and thus are
> not using any cached modules.
>
> Also update a test of explicitly generated modules to pass this CC1 flag
> correctly.
>
> This fixes an issue where Clang was dropping files into the source tree
> while running its tests.
>
Thanks!
>
> Modified:
> cfe/trunk/lib/Frontend/CompilerInstance.cpp
> cfe/trunk/test/Modules/relative-dep-gen.cpp
>
> Modified: cfe/trunk/lib/Frontend/CompilerInstance.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Frontend/CompilerInstance.cpp?rev=233117&r1=233116&r2=233117&view=diff
>
> ==============================================================================
> --- cfe/trunk/lib/Frontend/CompilerInstance.cpp (original)
> +++ cfe/trunk/lib/Frontend/CompilerInstance.cpp Tue Mar 24 16:44:25 2015
> @@ -1239,9 +1239,10 @@ void CompilerInstance::createModuleManag
> if (!hasASTContext())
> createASTContext();
>
> - // If we're not recursively building a module, check whether we
> - // need to prune the module cache.
> - if (getSourceManager().getModuleBuildStack().empty() &&
> + // If we're implicitly building modules but not currently recursively
> + // building a module, check whether we need to prune the module cache.
> + if (getLangOpts().ImplicitModules &&
> + getSourceManager().getModuleBuildStack().empty() &&
> getHeaderSearchOpts().ModuleCachePruneInterval > 0 &&
> getHeaderSearchOpts().ModuleCachePruneAfter > 0) {
> pruneModuleCache(getHeaderSearchOpts());
>
> Modified: cfe/trunk/test/Modules/relative-dep-gen.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Modules/relative-dep-gen.cpp?rev=233117&r1=233116&r2=233117&view=diff
>
> ==============================================================================
> --- cfe/trunk/test/Modules/relative-dep-gen.cpp (original)
> +++ cfe/trunk/test/Modules/relative-dep-gen.cpp Tue Mar 24 16:44:25 2015
> @@ -2,17 +2,17 @@
> // RUN: rm -rf %t
> // RUN: mkdir %t
> //
> -// RUN: %clang_cc1 -cc1 -fmodule-name=relative-dep-gen -emit-module -x
> c++ Inputs/relative-dep-gen.modulemap -dependency-file %t/build.d -MT
> mod.pcm -o %t/mod.pcm
> -// RUN: %clang_cc1 -cc1
> -fmodule-map-file=Inputs/relative-dep-gen.modulemap
> -fmodule-file=%t/mod.pcm -dependency-file %t/use-explicit.d -MT use.o
> relative-dep-gen.cpp -fsyntax-only
> -// RUN: %clang_cc1 -cc1
> -fmodule-map-file=Inputs/relative-dep-gen.modulemap -dependency-file
> %t/use-implicit.d relative-dep-gen.cpp -MT use.o -fsyntax-only
> +// RUN: %clang_cc1 -cc1 -fno-implicit-modules
> -fmodule-name=relative-dep-gen -emit-module -x c++
> Inputs/relative-dep-gen.modulemap -dependency-file %t/build.d -MT mod.pcm
> -o %t/mod.pcm
> +// RUN: %clang_cc1 -cc1 -fno-implicit-modules
> -fmodule-map-file=Inputs/relative-dep-gen.modulemap
> -fmodule-file=%t/mod.pcm -dependency-file %t/use-explicit.d -MT use.o
> relative-dep-gen.cpp -fsyntax-only
> +// RUN: %clang_cc1 -cc1 -fno-implicit-modules
> -fmodule-map-file=Inputs/relative-dep-gen.modulemap -dependency-file
> %t/use-implicit.d relative-dep-gen.cpp -MT use.o -fsyntax-only
> //
> // RUN: FileCheck --check-prefix=CHECK-BUILD %s < %t/build.d
> // RUN: FileCheck --check-prefix=CHECK-USE %s < %t/use-explicit.d
> // RUN: FileCheck --check-prefix=CHECK-USE %s < %t/use-implicit.d
> //
> -// RUN: %clang_cc1 -cc1 -fmodule-name=relative-dep-gen -emit-module -x
> c++ Inputs/relative-dep-gen-cwd.modulemap -dependency-file %t/build-cwd.d
> -MT mod.pcm -o %t/mod-cwd.pcm -fmodule-map-file-home-is-cwd
> -// RUN: %clang_cc1 -cc1
> -fmodule-map-file=Inputs/relative-dep-gen-cwd.modulemap
> -fmodule-file=%t/mod-cwd.pcm -dependency-file %t/use-explicit-cwd.d -MT
> use.o relative-dep-gen.cpp -fsyntax-only -fmodule-map-file-home-is-cwd
> -// RUN: %clang_cc1 -cc1
> -fmodule-map-file=Inputs/relative-dep-gen-cwd.modulemap -dependency-file
> %t/use-implicit-cwd.d relative-dep-gen.cpp -MT use.o -fsyntax-only
> -fmodule-map-file-home-is-cwd
> +// RUN: %clang_cc1 -cc1 -fno-implicit-modules
> -fmodule-name=relative-dep-gen -emit-module -x c++
> Inputs/relative-dep-gen-cwd.modulemap -dependency-file %t/build-cwd.d -MT
> mod.pcm -o %t/mod-cwd.pcm -fmodule-map-file-home-is-cwd
> +// RUN: %clang_cc1 -cc1 -fno-implicit-modules
> -fmodule-map-file=Inputs/relative-dep-gen-cwd.modulemap
> -fmodule-file=%t/mod-cwd.pcm -dependency-file %t/use-explicit-cwd.d -MT
> use.o relative-dep-gen.cpp -fsyntax-only -fmodule-map-file-home-is-cwd
> +// RUN: %clang_cc1 -cc1 -fno-implicit-modules
> -fmodule-map-file=Inputs/relative-dep-gen-cwd.modulemap -dependency-file
> %t/use-implicit-cwd.d relative-dep-gen.cpp -MT use.o -fsyntax-only
> -fmodule-map-file-home-is-cwd
> //
> // RUN: FileCheck --check-prefix=CHECK-BUILD %s < %t/build-cwd.d
> // RUN: FileCheck --check-prefix=CHECK-USE %s < %t/use-explicit-cwd.d
>
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20150324/6719f422/attachment.html>
More information about the cfe-commits
mailing list