From 73e1d029f9c8f3213d2d7eddec596cd0fb9f0448 Mon Sep 17 00:00:00 2001 From: jinge90 Date: Wed, 13 Nov 2024 15:26:55 +0800 Subject: [PATCH 1/3] [SYCL][NFC] Fix clang format in SYCL.h Signed-off-by: jinge90 --- clang/lib/Driver/ToolChains/SYCL.h | 32 +++++++++++++++++------------- 1 file changed, 18 insertions(+), 14 deletions(-) diff --git a/clang/lib/Driver/ToolChains/SYCL.h b/clang/lib/Driver/ToolChains/SYCL.h index 538416e06171d..e0b1e1dce8a9c 100644 --- a/clang/lib/Driver/ToolChains/SYCL.h +++ b/clang/lib/Driver/ToolChains/SYCL.h @@ -1,4 +1,5 @@ -//===--- SYCL.h - SYCL ToolChain Implementations -----------------*- C++ -*-===// +//===--- SYCL.h - SYCL ToolChain Implementations -----------------*- C++ +//-*-===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. @@ -158,8 +159,8 @@ SmallVector getDeviceLibraries(const Compilation &C, bool IsSpirvAOT); // Populates the SYCL device traits macros. -void populateSYCLDeviceTraitsMacrosArgs(Compilation &C, - const llvm::opt::ArgList &Args, +void populateSYCLDeviceTraitsMacrosArgs( + Compilation &C, const llvm::opt::ArgList &Args, const SmallVectorImpl> &Targets); bool shouldDoPerObjectFileLinking(const Compilation &C); @@ -180,11 +181,11 @@ class LLVM_LIBRARY_VISIBILITY Linker : public Tool { private: /// \return llvm-link output file name. const char *constructLLVMLinkCommand(Compilation &C, const JobAction &JA, - const InputInfo &Output, - const llvm::opt::ArgList &Args, - llvm::StringRef SubArchName, - llvm::StringRef OutputFilePrefix, - const InputInfoList &InputFiles) const; + const InputInfo &Output, + const llvm::opt::ArgList &Args, + llvm::StringRef SubArchName, + llvm::StringRef OutputFilePrefix, + const InputInfoList &InputFiles) const; }; /// Directly call FPGA Compiler and Linker @@ -241,7 +242,7 @@ template std::optional isGPUTarget(StringRef Target) { if (Target.starts_with(GPUArh)) { return resolveGenDevice(Target); } - return std::nullopt; + return std::nullopt; } } // end namespace gen @@ -280,9 +281,10 @@ class LLVM_LIBRARY_VISIBILITY SYCLToolChain : public ToolChain { llvm::opt::DerivedArgList * TranslateArgs(const llvm::opt::DerivedArgList &Args, StringRef BoundArch, Action::OffloadKind DeviceOffloadKind) const override; - void addClangTargetOptions(const llvm::opt::ArgList &DriverArgs, - llvm::opt::ArgStringList &CC1Args, - Action::OffloadKind DeviceOffloadKind) const override; + void + addClangTargetOptions(const llvm::opt::ArgList &DriverArgs, + llvm::opt::ArgStringList &CC1Args, + Action::OffloadKind DeviceOffloadKind) const override; void AddImpliedTargetArgs(const llvm::Triple &Triple, const llvm::opt::ArgList &Args, llvm::opt::ArgStringList &CmdArgs, @@ -324,7 +326,8 @@ class LLVM_LIBRARY_VISIBILITY SYCLToolChain : public ToolChain { CXXStdlibType GetCXXStdlibType(const llvm::opt::ArgList &Args) const override; void AddSYCLIncludeArgs(const llvm::opt::ArgList &DriverArgs, llvm::opt::ArgStringList &CC1Args) const override; - void AddClangSystemIncludeArgs(const llvm::opt::ArgList &DriverArgs, + void + AddClangSystemIncludeArgs(const llvm::opt::ArgList &DriverArgs, llvm::opt::ArgStringList &CC1Args) const override; void AddClangCXXStdlibIncludeArgs( const llvm::opt::ArgList &Args, @@ -357,7 +360,8 @@ inline bool isSYCLNativeCPU(const llvm::opt::ArgList &Args) { return false; } -inline bool isSYCLNativeCPU(const llvm::Triple &HostT, const llvm::Triple &DevT) { +inline bool isSYCLNativeCPU(const llvm::Triple &HostT, + const llvm::Triple &DevT) { return HostT == DevT; } From 541fae0435eafbaff3883ccb43dc3fe20c4fd00c Mon Sep 17 00:00:00 2001 From: jinge90 Date: Thu, 14 Nov 2024 09:37:43 +0800 Subject: [PATCH 2/3] Update clang/lib/Driver/ToolChains/SYCL.h Co-authored-by: Michael Toguchi --- clang/lib/Driver/ToolChains/SYCL.h | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/clang/lib/Driver/ToolChains/SYCL.h b/clang/lib/Driver/ToolChains/SYCL.h index e0b1e1dce8a9c..65941ae356549 100644 --- a/clang/lib/Driver/ToolChains/SYCL.h +++ b/clang/lib/Driver/ToolChains/SYCL.h @@ -1,5 +1,4 @@ -//===--- SYCL.h - SYCL ToolChain Implementations -----------------*- C++ -//-*-===// +//===--- SYCL.h - SYCL ToolChain Implementations ----------------*- C++ -*-===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. From 07a39d9106f13efc23b7d3c24107a5b6d6f4ff13 Mon Sep 17 00:00:00 2001 From: jinge90 Date: Thu, 14 Nov 2024 11:57:56 +0800 Subject: [PATCH 3/3] fix clang format for ClangLinkerWrapper Signed-off-by: jinge90 --- .../clang-linker-wrapper/ClangLinkerWrapper.cpp | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp b/clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp index ec883c1091196..abd542c6e4b3c 100644 --- a/clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp +++ b/clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp @@ -1111,8 +1111,10 @@ wrapSYCLBinariesFromFile(std::vector &SplitModules, if (!MBOrDesc) return createFileError(SI.ModuleFilePath, MBOrDesc.getError()); - StringRef ImageTarget = IsEmbeddedIR ? StringRef(EmbeddedIRTarget) : StringRef(RegularTarget); - Images.emplace_back(std::move(*MBOrDesc), SI.Properties, SI.Symbols, ImageTarget); + StringRef ImageTarget = + IsEmbeddedIR ? StringRef(EmbeddedIRTarget) : StringRef(RegularTarget); + Images.emplace_back(std::move(*MBOrDesc), SI.Properties, SI.Symbols, + ImageTarget); } LLVMContext C; @@ -1197,7 +1199,8 @@ static Expected runCompile(StringRef &InputFile, static Expected runWrapperAndCompile(std::vector &SplitModules, const ArgList &Args, bool IsEmbeddedIR = false) { - auto OutputFile = sycl::wrapSYCLBinariesFromFile(SplitModules, Args, IsEmbeddedIR); + auto OutputFile = + sycl::wrapSYCLBinariesFromFile(SplitModules, Args, IsEmbeddedIR); if (!OutputFile) return OutputFile.takeError(); // call to clang @@ -2416,8 +2419,8 @@ Expected> linkAndWrapDeviceFiles( // of sycl-post-link (filetable referencing LLVM Bitcode + symbols) // through the offload wrapper and link the resulting object to the // application. - auto OutputFile = - sycl::runWrapperAndCompile(SplitModules, LinkerArgs, /* IsEmbeddedIR */ true); + auto OutputFile = sycl::runWrapperAndCompile(SplitModules, LinkerArgs, + /* IsEmbeddedIR */ true); if (!OutputFile) return OutputFile.takeError(); WrappedOutput.push_back(*OutputFile);