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