[PATCH] D125859: [clang][deps] stop reusing FileManager in DependencyScanningAction

2022-05-18 Thread Shi Chen via Phabricator via cfe-commits
Kale created this revision. Herald added a project: All. Kale requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. DepFS already provides necessary caching, so explicitly stop reusing the FileMgr for possibly cache conflict. Repository: rG

[PATCH] D124816: [LibTooling] use ToolFileManager to store file managers for each CWD

2022-05-18 Thread Shi Chen via Phabricator via cfe-commits
Kale updated this revision to Diff 430268. Kale added a comment. 1. Use BaseFS as the condition to judge whether to invalidate previous file managers 2. Use WorkingDir as a parameter for getOrCreateFileManager Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D124816: [LibTooling] use ToolFileManager to store file managers for each CWD

2022-05-14 Thread Shi Chen via Phabricator via cfe-commits
Kale added inline comments. Comment at: clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp:171-172 FileMgr->getFileSystemOpts().WorkingDir = std::string(WorkingDirectory); ScanInstance.setFileManager(FileMgr);

[PATCH] D124816: [LibTooling] use ToolFileManager to store file managers for each CWD

2022-05-07 Thread Shi Chen via Phabricator via cfe-commits
Kale updated this revision to Diff 427822. Kale added a comment. Herald added subscribers: carlosgalvezp, usaxena95, kadircet, arphaman. Herald added a project: clang-tools-extra. Fix tests & runInvocation in clang-tools-extra. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D124816: [Tooling] use different FileManager for each CWD

2022-05-07 Thread Shi Chen via Phabricator via cfe-commits
Kale updated this revision to Diff 427820. Kale added a comment. Reimplement ToolFileManager as a container of filemanagers which ToolInvocation takes by parameter. Also invalidate all file managers when using FileManager::setVirtualFileSystem(). Repository: rG LLVM Github Monorepo CHANGES

[PATCH] D124816: [Tooling] use different FileManager for each CWD

2022-05-06 Thread Shi Chen via Phabricator via cfe-commits
Kale added a comment. In D124816#3494243 , @dexonsmith wrote: > Two high-level comments: > > - Making these functions `virtual` makes it harder to reason about possible > implementations, but I don't think that's necessary for what you're doing >

[PATCH] D124816: [Tooling] use different FileManager for each CWD

2022-05-05 Thread Shi Chen via Phabricator via cfe-commits
Kale updated this revision to Diff 427317. Kale added a comment. Format all overriding functions Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D124816/new/ https://reviews.llvm.org/D124816 Files: clang/include/clang/Basic/FileManager.h

[PATCH] D124816: [Tooling] use different FileManager for each CWD

2022-05-05 Thread Shi Chen via Phabricator via cfe-commits
Kale updated this revision to Diff 427313. Kale added a comment. Fix path in compile_commands.json for windows. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D124816/new/ https://reviews.llvm.org/D124816 Files:

[PATCH] D124816: [Tooling] add ToolingFileManager to force using abs path

2022-05-02 Thread Shi Chen via Phabricator via cfe-commits
Kale created this revision. Herald added a subscriber: dexonsmith. Herald added a project: All. Kale requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. ClangTool will make FileManager mix up two header files with the same relative path in