[clang] [clang] Stop adjusting the module cache path (PR #102540)
via cfe-commits
cfe-commits at lists.llvm.org
Thu Aug 8 14:23:47 PDT 2024
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-clang
Author: Jan Svoboda (jansvoboda11)
<details>
<summary>Changes</summary>
This patch stops adjustments of the module cache path beyond what is done in `ParseHeaderSearchArgs` (making it absolute and removing dots). This enables more efficient implementation of the caching VFS in https://github.com/llvm/llvm-project/pull/88800.
---
Full diff: https://github.com/llvm/llvm-project/pull/102540.diff
2 Files Affected:
- (modified) clang/lib/Frontend/CompilerInstance.cpp (+2-3)
- (modified) clang/lib/Lex/HeaderSearch.cpp (-1)
``````````diff
diff --git a/clang/lib/Frontend/CompilerInstance.cpp b/clang/lib/Frontend/CompilerInstance.cpp
index 6242b5a7d9fe39..1364641a9b71e1 100644
--- a/clang/lib/Frontend/CompilerInstance.cpp
+++ b/clang/lib/Frontend/CompilerInstance.cpp
@@ -1659,9 +1659,8 @@ static void pruneModuleCache(const HeaderSearchOptions &HSOpts) {
// Walk the entire module cache, looking for unused module files and module
// indices.
std::error_code EC;
- SmallString<128> ModuleCachePathNative;
- llvm::sys::path::native(HSOpts.ModuleCachePath, ModuleCachePathNative);
- for (llvm::sys::fs::directory_iterator Dir(ModuleCachePathNative, EC), DirEnd;
+ for (llvm::sys::fs::directory_iterator Dir(HSOpts.ModuleCachePath, EC),
+ DirEnd;
Dir != DirEnd && !EC; Dir.increment(EC)) {
// If we don't have a directory, there's nothing to look into.
if (!llvm::sys::fs::is_directory(Dir->path()))
diff --git a/clang/lib/Lex/HeaderSearch.cpp b/clang/lib/Lex/HeaderSearch.cpp
index d2210e7e18628a..4914c10e62d0c5 100644
--- a/clang/lib/Lex/HeaderSearch.cpp
+++ b/clang/lib/Lex/HeaderSearch.cpp
@@ -267,7 +267,6 @@ std::string HeaderSearch::getCachedModuleFileNameImpl(StringRef ModuleName,
return {};
SmallString<256> Result(CachePath);
- llvm::sys::fs::make_absolute(Result);
if (HSOpts->DisableModuleHash) {
llvm::sys::path::append(Result, ModuleName + ".pcm");
``````````
</details>
https://github.com/llvm/llvm-project/pull/102540
More information about the cfe-commits
mailing list