[all-commits] [llvm/llvm-project] a11a43: [clang][deps] Cache `VFS::getRealPath()` (#68645)
Jan Svoboda via All-commits
all-commits at lists.llvm.org
Fri Apr 12 11:39:04 PDT 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: a11a4324bb27c01e7a005e1a7f49fb8284098e8c
https://github.com/llvm/llvm-project/commit/a11a4324bb27c01e7a005e1a7f49fb8284098e8c
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2024-04-12 (Fri, 12 Apr 2024)
Changed paths:
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningFilesystem.h
M clang/lib/Tooling/DependencyScanning/DependencyScanningFilesystem.cpp
M clang/unittests/Tooling/CMakeLists.txt
A clang/unittests/Tooling/DependencyScanning/DependencyScanningFilesystemTest.cpp
Log Message:
-----------
[clang][deps] Cache `VFS::getRealPath()` (#68645)
This PR starts caching calls to
`DependencyScanningWorkerFilesystem::getRealPath()` that we use whenever
we canonicalize module map path. In the case of the real VFS, this
functions performs an expensive syscall that we'd like to do as rarely
as possible.
This PR keeps the real path out of `CachedFileSystemEntry`, since that's
**immutable**; populating the real path on creation of this data
structure (every stat/open) would be expensive.
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list