From e739669331e1b8bcd759af8a09c0c59c182127c8 Mon Sep 17 00:00:00 2001 From: "Jiang, Zhiwei" Date: Mon, 7 Jul 2025 09:15:27 +0800 Subject: [PATCH] [SYCLomatic] Fix CMake script migration Signed-off-by: Jiang, Zhiwei --- clang/lib/DPCT/DPCT.cpp | 5 ----- clang/lib/DPCT/UserDefinedRules/PatternRewriter.cpp | 9 ++++++--- clang/lib/DPCT/UserDefinedRules/PatternRewriter.h | 1 - 3 files changed, 6 insertions(+), 9 deletions(-) diff --git a/clang/lib/DPCT/DPCT.cpp b/clang/lib/DPCT/DPCT.cpp index efad8a5917d6..db1eb6aebcbf 100644 --- a/clang/lib/DPCT/DPCT.cpp +++ b/clang/lib/DPCT/DPCT.cpp @@ -520,11 +520,6 @@ static void loadMainSrcFileInfo(clang::tooling::UnifiedPath YamlFilePath) { } DpctGlobalInfo::setMainSourceYamlTUR(PreTU); - for (auto &Entry : PreTU->MainSourceFilesDigest) { - if (Entry.HasCUDASyntax) - MainSrcFilesHasCudaSyntex.insert(Entry.MainSourceFile); - } - // Currently, when "--use-experimental-features=device_global" and // "--use-experimental-features=all" are specified, the migrated code should // be compiled with C++20 or later. diff --git a/clang/lib/DPCT/UserDefinedRules/PatternRewriter.cpp b/clang/lib/DPCT/UserDefinedRules/PatternRewriter.cpp index 9825631020e0..911c8d86759a 100644 --- a/clang/lib/DPCT/UserDefinedRules/PatternRewriter.cpp +++ b/clang/lib/DPCT/UserDefinedRules/PatternRewriter.cpp @@ -28,7 +28,6 @@ namespace clang { namespace dpct { -std::set MainSrcFilesHasCudaSyntex; bool LANG_Cplusplus_20_Used = false; struct SpacingElement {}; @@ -465,9 +464,13 @@ static void applyExtenstionNameChange( std::string SrcFile = Input.substr(Pos, Next + ExtensionType.length() + 1 /*strlen of "."*/ - Pos); bool HasCudaSyntax = false; - + std::set MainSrcFilesHasCudaSyntex; + for (auto &Entry : + DpctGlobalInfo::getMainSourceYamlTUR()->MainSourceFilesDigest) { + if (Entry.HasCUDASyntax) + MainSrcFilesHasCudaSyntex.insert(Entry.MainSourceFile); + } for (const auto &_File : MainSrcFilesHasCudaSyntex) { - llvm::SmallString<512> File(_File); llvm::sys::path::native(File); diff --git a/clang/lib/DPCT/UserDefinedRules/PatternRewriter.h b/clang/lib/DPCT/UserDefinedRules/PatternRewriter.h index 144f53c415a7..ac8128c6b2c6 100644 --- a/clang/lib/DPCT/UserDefinedRules/PatternRewriter.h +++ b/clang/lib/DPCT/UserDefinedRules/PatternRewriter.h @@ -27,7 +27,6 @@ bool fixLineEndings(const std::string &Input, std::string &Output); enum SourceFileType { SFT_CAndCXXSource, SFT_CMakeScript, SFT_PySetupScript }; void setFileTypeProcessed(enum SourceFileType FileType); -extern std::set MainSrcFilesHasCudaSyntex; extern bool LANG_Cplusplus_20_Used; } // namespace dpct