From 08c561e331653e058f6ba24c8ecfc9a2c944faca Mon Sep 17 00:00:00 2001 From: jinge90 Date: Thu, 6 Nov 2025 13:27:48 +0800 Subject: [PATCH 1/7] [SYCL] Clear usesAssert required by fallback assert Signed-off-by: jinge90 --- sycl/source/detail/queue_impl.cpp | 7 ------- sycl/source/detail/scheduler/commands.cpp | 10 ---------- 2 files changed, 17 deletions(-) diff --git a/sycl/source/detail/queue_impl.cpp b/sycl/source/detail/queue_impl.cpp index 5b7bfb5e90fae..7f38c9266a37e 100644 --- a/sycl/source/detail/queue_impl.cpp +++ b/sycl/source/detail/queue_impl.cpp @@ -435,13 +435,6 @@ EventImplPtr queue_impl::submit_kernel_scheduler_bypass( } bool DiscardEvent = !EventNeeded && supportsDiscardingPiEvents(); - if (DiscardEvent) { - // Kernel only uses assert if it's non interop one - bool KernelUsesAssert = - !(KernelImplPtr && KernelImplPtr->isInterop()) && KData.usesAssert(); - DiscardEvent = !KernelUsesAssert; - } - std::shared_ptr ResultEvent = DiscardEvent ? nullptr : detail::event_impl::create_device_event(*this); diff --git a/sycl/source/detail/scheduler/commands.cpp b/sycl/source/detail/scheduler/commands.cpp index 498a3cee61728..7914cc1ca2f2c 100644 --- a/sycl/source/detail/scheduler/commands.cpp +++ b/sycl/source/detail/scheduler/commands.cpp @@ -3346,16 +3346,6 @@ ur_result_t ExecCGCommand::enqueueImpQueue() { const std::shared_ptr &SyclKernel = ExecKernel->MSyclKernel; KernelNameStrRefT KernelName = ExecKernel->MDeviceKernelInfo.Name; - - if (!EventImpl) { - // Kernel only uses assert if it's non interop one - bool KernelUsesAssert = (!SyclKernel || SyclKernel->hasSYCLMetadata()) && - ExecKernel->MDeviceKernelInfo.usesAssert(); - if (KernelUsesAssert) { - EventImpl = MEvent.get(); - } - } - const RTDeviceBinaryImage *BinImage = nullptr; if (detail::SYCLConfig::get()) { BinImage = retrieveKernelBinary(*MQueue, KernelName); From 25aeca8d8892a234507dd4924a25878ef62658ec Mon Sep 17 00:00:00 2001 From: jinge90 Date: Tue, 11 Nov 2025 11:12:15 +0800 Subject: [PATCH 2/7] clear fallback assert code in sycl-post-link and sycn runtime Signed-off-by: jinge90 --- llvm/include/llvm/Support/PropertySetIO.h | 1 - .../SYCLPostLink/ComputeModuleRuntimeInfo.cpp | 86 ------------------ llvm/lib/Support/PropertySetIO.cpp | 1 - sycl/include/sycl/queue.hpp | 7 -- sycl/source/detail/compiler.hpp | 2 - sycl/source/detail/device_binary_image.cpp | 15 +-- sycl/source/detail/device_binary_image.hpp | 2 - sycl/source/detail/device_kernel_info.cpp | 6 +- sycl/source/detail/device_kernel_info.hpp | 2 - sycl/source/detail/kernel_data.hpp | 5 - .../program_manager/program_manager.cpp | 19 +--- .../program_manager/program_manager.hpp | 10 -- sycl/test-e2e/Assert/a.out | Bin 0 -> 228592 bytes sycl/test-e2e/DeviceLib/a.out | Bin 0 -> 269240 bytes 14 files changed, 9 insertions(+), 147 deletions(-) create mode 100755 sycl/test-e2e/Assert/a.out create mode 100755 sycl/test-e2e/DeviceLib/a.out diff --git a/llvm/include/llvm/Support/PropertySetIO.h b/llvm/include/llvm/Support/PropertySetIO.h index c0b3f7779c159..8338b894bd109 100644 --- a/llvm/include/llvm/Support/PropertySetIO.h +++ b/llvm/include/llvm/Support/PropertySetIO.h @@ -216,7 +216,6 @@ class PropertySetRegistry { static constexpr char SYCL_KERNEL_PARAM_OPT_INFO[] = "SYCL/kernel param opt"; static constexpr char SYCL_PROGRAM_METADATA[] = "SYCL/program metadata"; static constexpr char SYCL_MISC_PROP[] = "SYCL/misc properties"; - static constexpr char SYCL_ASSERT_USED[] = "SYCL/assert used"; static constexpr char SYCL_KERNEL_NAMES[] = "SYCL/kernel names"; static constexpr char SYCL_EXPORTED_SYMBOLS[] = "SYCL/exported symbols"; static constexpr char SYCL_IMPORTED_SYMBOLS[] = "SYCL/imported symbols"; diff --git a/llvm/lib/SYCLPostLink/ComputeModuleRuntimeInfo.cpp b/llvm/lib/SYCLPostLink/ComputeModuleRuntimeInfo.cpp index c4bd7129fefe4..07afffbecf552 100644 --- a/llvm/lib/SYCLPostLink/ComputeModuleRuntimeInfo.cpp +++ b/llvm/lib/SYCLPostLink/ComputeModuleRuntimeInfo.cpp @@ -57,85 +57,6 @@ bool isModuleUsingTsan(const Module &M) { return M.getNamedGlobal("__TsanKernelMetadata"); } -// This function traverses over reversed call graph by BFS algorithm. -// It means that an edge links some function @func with functions -// which contain call of function @func. It starts from -// @StartingFunction and lifts up until it reach all reachable functions, -// or it reaches some function containing "referenced-indirectly" attribute. -// If it reaches "referenced-indirectly" attribute than it returns an empty -// Optional. -// Otherwise, it returns an Optional containing a list of reached -// SPIR kernel function's names. -static std::optional> traverseCGToFindSPIRKernels( - const std::vector &StartingFunctionVec) { - std::queue FunctionsToVisit; - std::unordered_set VisitedFunctions; - for (const Function *FPtr : StartingFunctionVec) - FunctionsToVisit.push(FPtr); - std::vector KernelNames; - - while (!FunctionsToVisit.empty()) { - const Function *F = FunctionsToVisit.front(); - FunctionsToVisit.pop(); - - auto InsertionResult = VisitedFunctions.insert(F); - // It is possible that we insert some particular function several - // times in functionsToVisit queue. - if (!InsertionResult.second) - continue; - - for (const auto *U : F->users()) { - const CallInst *CI = dyn_cast(U); - if (!CI) - continue; - - const Function *ParentF = CI->getFunction(); - - if (VisitedFunctions.count(ParentF)) - continue; - - if (ParentF->hasFnAttribute("referenced-indirectly")) - return {}; - - if (ParentF->getCallingConv() == CallingConv::SPIR_KERNEL) - KernelNames.push_back(ParentF->getName()); - - FunctionsToVisit.push(ParentF); - } - } - - return {std::move(KernelNames)}; -} - -static std::vector -getKernelNamesUsingSpecialFunctions(const Module &M, - const std::vector &FNames) { - std::vector SpecialFunctionVec; - for (const auto Fn : FNames) { - Function *FPtr = M.getFunction(Fn); - if (FPtr) - SpecialFunctionVec.push_back(FPtr); - } - - if (SpecialFunctionVec.size() == 0) - return {}; - - auto TraverseResult = traverseCGToFindSPIRKernels(SpecialFunctionVec); - - if (TraverseResult.has_value()) - return std::move(*TraverseResult); - - // Here we reached "referenced-indirectly", so we need to find all kernels and - // return them. - std::vector SPIRKernelNames; - for (const Function &F : M) { - if (F.getCallingConv() == CallingConv::SPIR_KERNEL) - SPIRKernelNames.push_back(F.getName()); - } - - return SPIRKernelNames; -} - // Gets 1- to 3-dimension work-group related information for function Func. // Returns an empty vector if not present. template @@ -449,13 +370,6 @@ PropSetRegTy computeModuleProperties(const Module &M, if (OptLevel != -1) PropSet.add(PropSetRegTy::SYCL_MISC_PROP, "optLevel", OptLevel); } - { - std::vector AssertFuncNames{"__devicelib_assert_fail"}; - std::vector FuncNames = - getKernelNamesUsingSpecialFunctions(M, AssertFuncNames); - for (const StringRef &FName : FuncNames) - PropSet.add(PropSetRegTy::SYCL_ASSERT_USED, FName, true); - } { std::vector> ArgPos = getKernelNamesUsingImplicitLocalMem(M); diff --git a/llvm/lib/Support/PropertySetIO.cpp b/llvm/lib/Support/PropertySetIO.cpp index d2030a8825fde..b562c67ff1eb3 100644 --- a/llvm/lib/Support/PropertySetIO.cpp +++ b/llvm/lib/Support/PropertySetIO.cpp @@ -200,7 +200,6 @@ constexpr char PropertySetRegistry::SYCL_SPEC_CONSTANTS_DEFAULT_VALUES[]; constexpr char PropertySetRegistry::SYCL_KERNEL_PARAM_OPT_INFO[]; constexpr char PropertySetRegistry::SYCL_PROGRAM_METADATA[]; constexpr char PropertySetRegistry::SYCL_MISC_PROP[]; -constexpr char PropertySetRegistry::SYCL_ASSERT_USED[]; constexpr char PropertySetRegistry::SYCL_KERNEL_NAMES[]; constexpr char PropertySetRegistry::SYCL_EXPORTED_SYMBOLS[]; constexpr char PropertySetRegistry::SYCL_IMPORTED_SYMBOLS[]; diff --git a/sycl/include/sycl/queue.hpp b/sycl/include/sycl/queue.hpp index f7bff57c2df9a..826bc39982408 100644 --- a/sycl/include/sycl/queue.hpp +++ b/sycl/include/sycl/queue.hpp @@ -3817,13 +3817,6 @@ class __SYCL_EXPORT queue : public detail::OwnerLessBase { friend auto get_native(const queue &Obj) -> backend_return_t; -#ifndef __INTEL_PREVIEW_BREAKING_CHANGES -#if __SYCL_USE_FALLBACK_ASSERT - friend event detail::submitAssertCapture(const queue &, event &, - const detail::code_location &); -#endif -#endif - template friend void ext::oneapi::experimental::detail::submit_impl( const queue &Q, PropertiesT Props, CommandGroupFunc &&CGF, diff --git a/sycl/source/detail/compiler.hpp b/sycl/source/detail/compiler.hpp index 2fc0b56135b20..670c8ce957ff4 100644 --- a/sycl/source/detail/compiler.hpp +++ b/sycl/source/detail/compiler.hpp @@ -55,8 +55,6 @@ #define __SYCL_PROPERTY_SET_PROGRAM_METADATA "SYCL/program metadata" /// PropertySetRegistry::SYCL_MISC_PROP defined in PropertySetIO.h #define __SYCL_PROPERTY_SET_SYCL_MISC_PROP "SYCL/misc properties" -/// PropertySetRegistry::SYCL_ASSERT_USED defined in PropertySetIO.h -#define __SYCL_PROPERTY_SET_SYCL_ASSERT_USED "SYCL/assert used" /// PropertySetRegistry::SYCL_KERNEL_NAMES defined in PropertySetIO.h #define __SYCL_PROPERTY_SET_SYCL_KERNEL_NAMES "SYCL/kernel names" /// PropertySetRegistry::SYCL_EXPORTED_SYMBOLS defined in PropertySetIO.h diff --git a/sycl/source/detail/device_binary_image.cpp b/sycl/source/detail/device_binary_image.cpp index c8ff57631bb60..4ed4eea90fccc 100644 --- a/sycl/source/detail/device_binary_image.cpp +++ b/sycl/source/detail/device_binary_image.cpp @@ -191,7 +191,6 @@ RTDeviceBinaryImage::RTDeviceBinaryImage(sycl_device_binary Bin) { DeviceLibReqMask.init(Bin, __SYCL_PROPERTY_SET_DEVICELIB_REQ_MASK); DeviceLibMetadata.init(Bin, __SYCL_PROPERTY_SET_DEVICELIB_METADATA); KernelParamOptInfo.init(Bin, __SYCL_PROPERTY_SET_KERNEL_PARAM_OPT_INFO); - AssertUsed.init(Bin, __SYCL_PROPERTY_SET_SYCL_ASSERT_USED); ImplicitLocalArg.init(Bin, __SYCL_PROPERTY_SET_SYCL_IMPLICIT_LOCAL_ARG); ProgramMetadata.init(Bin, __SYCL_PROPERTY_SET_PROGRAM_METADATA); // Convert ProgramMetadata into the UR format @@ -517,8 +516,6 @@ DynRTDeviceBinaryImage::DynRTDeviceBinaryImage( naiveMergeBinaryProperties(Imgs, [](const RTDeviceBinaryImage &Img) { return Img.getKernelParamOptInfo(); }); - auto MergedAssertUsed = naiveMergeBinaryProperties( - Imgs, [](const RTDeviceBinaryImage &Img) { return Img.getAssertUsed(); }); auto MergedDeviceGlobals = naiveMergeBinaryProperties(Imgs, [](const RTDeviceBinaryImage &Img) { return Img.getDeviceGlobals(); @@ -546,13 +543,12 @@ DynRTDeviceBinaryImage::DynRTDeviceBinaryImage( return Img.getRegisteredKernels(); }); - std::array *, 11> MergedVecs{ + std::array *, 10> MergedVecs{ &MergedSpecConstants, &MergedSpecConstantsDefaultValues, - &MergedKernelParamOptInfo, &MergedAssertUsed, - &MergedDeviceGlobals, &MergedHostPipes, - &MergedVirtualFunctions, &MergedImplicitLocalArg, - &MergedKernelNames, &MergedExportedSymbols, - &MergedRegisteredKernels}; + &MergedKernelParamOptInfo, &MergedDeviceGlobals, + &MergedHostPipes, &MergedVirtualFunctions, + &MergedImplicitLocalArg, &MergedKernelNames, + &MergedExportedSymbols, &MergedRegisteredKernels}; // Exclusive merges. auto MergedDeviceLibReqMask = @@ -672,7 +668,6 @@ DynRTDeviceBinaryImage::DynRTDeviceBinaryImage( CopyPropertiesVec(MergedSpecConstantsDefaultValues, SpecConstDefaultValuesMap); CopyPropertiesVec(MergedKernelParamOptInfo, KernelParamOptInfo); - CopyPropertiesVec(MergedAssertUsed, AssertUsed); CopyPropertiesVec(MergedDeviceGlobals, DeviceGlobals); CopyPropertiesVec(MergedHostPipes, HostPipes); CopyPropertiesVec(MergedVirtualFunctions, VirtualFunctions); diff --git a/sycl/source/detail/device_binary_image.hpp b/sycl/source/detail/device_binary_image.hpp index 075229effb3ec..2cd380c91bd65 100644 --- a/sycl/source/detail/device_binary_image.hpp +++ b/sycl/source/detail/device_binary_image.hpp @@ -223,7 +223,6 @@ class RTDeviceBinaryImage { const PropertyRange &getKernelParamOptInfo() const { return KernelParamOptInfo; } - const PropertyRange &getAssertUsed() const { return AssertUsed; } const PropertyRange &getProgramMetadata() const { return ProgramMetadata; } const std::vector &getProgramMetadataUR() const { return ProgramMetadataUR; @@ -259,7 +258,6 @@ class RTDeviceBinaryImage { RTDeviceBinaryImage::PropertyRange DeviceLibReqMask; RTDeviceBinaryImage::PropertyRange DeviceLibMetadata; RTDeviceBinaryImage::PropertyRange KernelParamOptInfo; - RTDeviceBinaryImage::PropertyRange AssertUsed; RTDeviceBinaryImage::PropertyRange ProgramMetadata; RTDeviceBinaryImage::PropertyRange KernelNames; RTDeviceBinaryImage::PropertyRange ExportedSymbols; diff --git a/sycl/source/detail/device_kernel_info.cpp b/sycl/source/detail/device_kernel_info.cpp index 526f160c6596b..5c6dfad0d633d 100644 --- a/sycl/source/detail/device_kernel_info.cpp +++ b/sycl/source/detail/device_kernel_info.cpp @@ -24,7 +24,6 @@ DeviceKernelInfo::DeviceKernelInfo(const CompileTimeKernelInfoTy &Info) void DeviceKernelInfo::init(KernelNameStrRefT KernelName) { auto &PM = detail::ProgramManager::getInstance(); - MUsesAssert = PM.kernelUsesAssert(KernelName); MImplicitLocalArgPos = PM.kernelImplicitLocalArgPos(KernelName); #ifndef __INTEL_PREVIEW_BREAKING_CHANGES MInitialized.store(true); @@ -78,10 +77,7 @@ FastKernelSubcacheT &DeviceKernelInfo::getKernelSubcache() { assertInitialized(); return MFastKernelSubcache; } -bool DeviceKernelInfo::usesAssert() { - assertInitialized(); - return MUsesAssert; -} + const std::optional &DeviceKernelInfo::getImplicitLocalArgPos() { assertInitialized(); return MImplicitLocalArgPos; diff --git a/sycl/source/detail/device_kernel_info.hpp b/sycl/source/detail/device_kernel_info.hpp index 0ea4ff2d051e6..c76db34a3227d 100644 --- a/sycl/source/detail/device_kernel_info.hpp +++ b/sycl/source/detail/device_kernel_info.hpp @@ -108,7 +108,6 @@ class DeviceKernelInfo : public CompileTimeKernelInfoTy { void setCompileTimeInfoIfNeeded(const CompileTimeKernelInfoTy &Info); FastKernelSubcacheT &getKernelSubcache(); - bool usesAssert(); const std::optional &getImplicitLocalArgPos(); private: @@ -119,7 +118,6 @@ class DeviceKernelInfo : public CompileTimeKernelInfoTy { std::atomic MInitialized = false; #endif FastKernelSubcacheT MFastKernelSubcache; - bool MUsesAssert; std::optional MImplicitLocalArgPos; }; diff --git a/sycl/source/detail/kernel_data.hpp b/sycl/source/detail/kernel_data.hpp index 9f22fafa85aa4..aebf7e245c1a3 100644 --- a/sycl/source/detail/kernel_data.hpp +++ b/sycl/source/detail/kernel_data.hpp @@ -137,11 +137,6 @@ class KernelData { void setKernelFunc(void *KernelFuncPtr) { MKernelFuncPtr = KernelFuncPtr; } - bool usesAssert() const { - assert(MDeviceKernelInfoPtr); - return MDeviceKernelInfoPtr->usesAssert(); - } - // Kernel launch properties getter and setters. ur_kernel_cache_config_t getKernelCacheConfig() const { return MKernelCacheConfig; diff --git a/sycl/source/detail/program_manager/program_manager.cpp b/sycl/source/detail/program_manager/program_manager.cpp index 1d39a89a4dd45..2da2f2c6c1d7b 100644 --- a/sycl/source/detail/program_manager/program_manager.cpp +++ b/sycl/source/detail/program_manager/program_manager.cpp @@ -1794,14 +1794,6 @@ Managed ProgramManager::build( return LinkedProg; } -void ProgramManager::cacheKernelUsesAssertInfo(const RTDeviceBinaryImage &Img) { - const RTDeviceBinaryImage::PropertyRange &AssertUsedRange = - Img.getAssertUsed(); - if (AssertUsedRange.isAvailable()) - for (const auto &Prop : AssertUsedRange) - m_KernelUsesAssert.insert(Prop->Name); -} - void ProgramManager::cacheKernelImplicitLocalArg( const RTDeviceBinaryImage &Img) { const RTDeviceBinaryImage::PropertyRange &ImplicitLocalArgRange = @@ -2044,8 +2036,6 @@ void ProgramManager::addImage(sycl_device_binary RawImg, m_KernelNameRefCount[name]++; } - cacheKernelUsesAssertInfo(*Img); - // check if kernel uses sanitizer { sycl_device_binary_property SanProp = Img->getProperty("sanUsed"); @@ -2116,12 +2106,11 @@ void ProgramManager::addImages(sycl_device_binaries DeviceBinary) { } template -void removeFromMultimapByVal(MultimapT &Map, const KeyT &Key, const ValT &Val, - bool AssertContains = true) { +void removeFromMultimapByVal(MultimapT &Map, const KeyT &Key, const ValT &Val) { auto [RangeBegin, RangeEnd] = Map.equal_range(Key); auto It = std::find_if(RangeBegin, RangeEnd, [&](const auto &Pair) { return Pair.second == Val; }); - if (!AssertContains && It == RangeEnd) + if (It == RangeEnd) return; assert(It != RangeEnd); Map.erase(It); @@ -2233,7 +2222,6 @@ void ProgramManager::removeImages(sycl_device_binaries DeviceBinary) { if (--RefCount == 0) { // TODO aggregate all these maps into a single one since their entries // share lifetime. - m_KernelUsesAssert.erase(Name); m_KernelImplicitLocalArgPos.erase(Name); m_DeviceKernelInfoMap.erase(Name); m_KernelNameRefCount.erase(RefCountIt); @@ -2249,8 +2237,7 @@ void ProgramManager::removeImages(sycl_device_binaries DeviceBinary) { // unmap loop) for (const sycl_device_binary_property &ESProp : Img->getExportedSymbols()) { - removeFromMultimapByVal(m_ExportedSymbolImages, ESProp->Name, Img, - /*AssertContains*/ false); + removeFromMultimapByVal(m_ExportedSymbolImages, ESProp->Name, Img); } m_DeviceImages.erase(DevImgIt); diff --git a/sycl/source/detail/program_manager/program_manager.hpp b/sycl/source/detail/program_manager/program_manager.hpp index 73eca2cd86e0a..8357dd2f81915 100644 --- a/sycl/source/detail/program_manager/program_manager.hpp +++ b/sycl/source/detail/program_manager/program_manager.hpp @@ -371,11 +371,6 @@ class ProgramManager { ProgramManager(); ~ProgramManager() = default; - template - bool kernelUsesAssert(const NameT &KernelName) const { - return m_KernelUsesAssert.find(KernelName) != m_KernelUsesAssert.end(); - } - SanitizerType kernelUsesSanitizer() const { return m_SanitizerFoundInImage; } std::optional @@ -412,9 +407,6 @@ class ProgramManager { /// Dumps image to current directory void dumpImage(const RTDeviceBinaryImage &Img, uint32_t SequenceID = 0) const; - /// Add info on kernels using assert into cache - void cacheKernelUsesAssertInfo(const RTDeviceBinaryImage &Img); - /// Add info on kernels using local arg into cache void cacheKernelImplicitLocalArg(const RTDeviceBinaryImage &Img); @@ -528,8 +520,6 @@ class ProgramManager { // different types without temporary key_type object creation. This includes // standard overloads, such as comparison between std::string and // std::string_view or just char*. - using KernelUsesAssertSet = std::set>; - KernelUsesAssertSet m_KernelUsesAssert; std::unordered_map m_KernelImplicitLocalArgPos; // Map for storing device kernel information. Runtime lookup should be avoided diff --git a/sycl/test-e2e/Assert/a.out b/sycl/test-e2e/Assert/a.out new file mode 100755 index 0000000000000000000000000000000000000000..919cc156a774263c01b9a7e7ce7c27e3f7b707eb GIT binary patch literal 228592 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 PUd$)uX`u%~e Date: Tue, 11 Nov 2025 11:14:52 +0800 Subject: [PATCH 3/7] remove unrelated files Signed-off-by: jinge90 --- sycl/test-e2e/Assert/a.out | Bin 228592 -> 0 bytes sycl/test-e2e/DeviceLib/a.out | Bin 269240 -> 0 bytes 2 files changed, 0 insertions(+), 0 deletions(-) delete mode 100755 sycl/test-e2e/Assert/a.out delete mode 100755 sycl/test-e2e/DeviceLib/a.out diff --git a/sycl/test-e2e/Assert/a.out b/sycl/test-e2e/Assert/a.out deleted file mode 100755 index 919cc156a774263c01b9a7e7ce7c27e3f7b707eb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 228592 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 PUd$)uX`u%~e Date: Tue, 11 Nov 2025 11:51:21 +0800 Subject: [PATCH 4/7] Clean unittest Signed-off-by: jinge90 --- sycl/unittests/helpers/MockDeviceImage.hpp | 9 --------- sycl/unittests/program_manager/Cleanup.cpp | 2 -- 2 files changed, 11 deletions(-) diff --git a/sycl/unittests/helpers/MockDeviceImage.hpp b/sycl/unittests/helpers/MockDeviceImage.hpp index 343e8045b8ac5..40afada687c65 100644 --- a/sycl/unittests/helpers/MockDeviceImage.hpp +++ b/sycl/unittests/helpers/MockDeviceImage.hpp @@ -487,15 +487,6 @@ inline MockProperty makeSpecConstant(std::vector &ValData, return Prop; } -/// Utility function to mark kernel as the one using assert -inline void setKernelUsesAssert(const std::vector &Names, - MockPropertySet &Set) { - std::vector Value; - for (const std::string &N : Names) - Value.push_back({N, {0, 0, 0, 0}, SYCL_PROPERTY_TYPE_UINT32}); - Set.insert(__SYCL_PROPERTY_SET_SYCL_ASSERT_USED, std::move(Value)); -} - /// Utility function to add specialization constants to property set. /// /// This function overrides the default spec constant values. diff --git a/sycl/unittests/program_manager/Cleanup.cpp b/sycl/unittests/program_manager/Cleanup.cpp index 1bcbfa7676255..0c3926dde9be1 100644 --- a/sycl/unittests/program_manager/Cleanup.cpp +++ b/sycl/unittests/program_manager/Cleanup.cpp @@ -184,8 +184,6 @@ sycl::unittest::MockDeviceImage generateImage(const std::string &ImageId, PropSet.insert(__SYCL_PROPERTY_SET_SYCL_VIRTUAL_FUNCTIONS, createVFPropertySet(VirtualFunctions)); - setKernelUsesAssert(std::vector{KernelNames.begin()[0]}, - PropSet); PropSet.insert(__SYCL_PROPERTY_SET_SYCL_IMPLICIT_LOCAL_ARG, createPropertySet(ImplicitLocalArg)); From 19b376f5ac7b0cfca6f5628b143b8a63b1c41ced Mon Sep 17 00:00:00 2001 From: jinge90 Date: Tue, 11 Nov 2025 13:52:09 +0800 Subject: [PATCH 5/7] Remove unneeded tests Signed-off-by: jinge90 --- .../assert/indirect-with-split-2.ll | 165 -------- .../assert/indirect-with-split.ll | 143 ------- .../tools/sycl-post-link/assert/property-1.ll | 176 -------- .../tools/sycl-post-link/assert/property-2.ll | 393 ------------------ sycl/unittests/program_manager/Cleanup.cpp | 5 - 5 files changed, 882 deletions(-) delete mode 100644 llvm/test/tools/sycl-post-link/assert/indirect-with-split-2.ll delete mode 100644 llvm/test/tools/sycl-post-link/assert/indirect-with-split.ll delete mode 100644 llvm/test/tools/sycl-post-link/assert/property-1.ll delete mode 100644 llvm/test/tools/sycl-post-link/assert/property-2.ll diff --git a/llvm/test/tools/sycl-post-link/assert/indirect-with-split-2.ll b/llvm/test/tools/sycl-post-link/assert/indirect-with-split-2.ll deleted file mode 100644 index e7011ae6de141..0000000000000 --- a/llvm/test/tools/sycl-post-link/assert/indirect-with-split-2.ll +++ /dev/null @@ -1,165 +0,0 @@ -; This test checks that the post-link tool properly generates "assert used" -; property. This case validates that indirectly called function without assert -; does not cause all the module kernels to be marked as ones that can call -; assert indirectly. - -; Per design doc, if a callgraph for indirect callable function -; (marked with "referenced-indirectly" attribute in IR) has a call to -; __devicelib_assert_fail, then all kernels in the module are conservatively -; marked as using asserts. - -; RUN: sycl-post-link -properties -split=auto -symbols -S < %s -o %t.table -; RUN: FileCheck %s -input-file=%t_0.prop -check-prefixes=CHECK,CHECK0 \ -; RUN: --implicit-check-not TU1 -; RUN: FileCheck %s -input-file=%t_1.prop -check-prefixes=CHECK,CHECK1 \ -; RUN: --implicit-check-not TU0 -; -; CHECK: [SYCL/assert used] -; CHECK0-DAG: main_TU1_kernel0 -; CHECK0-DAG: main_TU1_kernel1 -; -; CHECK1: main_TU0_kernel0 - -target datalayout = "e-i64:64-v16:16-v24:32-v32:32-v48:64-v96:128-v192:256-v256:256-v512:512-v1024:1024" -target triple = "spir64-unknown-linux" - -@_ZL2GV = internal addrspace(1) constant [1 x i32] [i32 42], align 4 -@.str = private unnamed_addr addrspace(1) constant [2 x i8] c"0\00", align 1 -@.str.1 = private unnamed_addr addrspace(1) constant [11 x i8] c"assert.cpp\00", align 1 -@__PRETTY_FUNCTION__._Z3foov = private unnamed_addr addrspace(1) constant [11 x i8] c"void foo()\00", align 1 -@__spirv_BuiltInGlobalInvocationId = external dso_local local_unnamed_addr addrspace(1) constant <3 x i64>, align 32 -@__spirv_BuiltInLocalInvocationId = external dso_local local_unnamed_addr addrspace(1) constant <3 x i64>, align 32 -@_ZL10assert_fmt = internal addrspace(2) constant [85 x i8] c"%s:%d: %s: global id: [%lu,%lu,%lu], local id: [%lu,%lu,%lu] Assertion `%s` failed.\0A\00", align 1 - -; PRESENCE-CHECK: [SYCL/assert used] - -; PRESENCE-CHECK-DAG: main_TU1_kernel1 -define dso_local spir_kernel void @main_TU1_kernel1() #2 { -entry: - call spir_func void @foo() - call spir_func void @bar() - ret void -} - -define dso_local spir_func void @foo() #2 { -entry: - call spir_func void @_Z4foo1v() - ret void -} - -; ABSENCE-CHECK-NOT: empty_kernel -define dso_local spir_kernel void @empty_kernel() #2 { - %1 = ptrtoint void ()* @bar to i64 - ret void -} - -define dso_local spir_func void @bar() #2 { -entry: - call spir_func void @_Z3foov() ; call assert - call spir_func void @_Z4foo2v() ; indirectly called - ret void -} - -; PRESENCE-CHECK-DAG: main_TU0_kernel0 -define dso_local spir_kernel void @main_TU0_kernel0() #0 { -entry: - call spir_func void @_Z3foov() ; call assert - ret void -} - -define dso_local spir_func void @_Z3foov() { -entry: - %a = alloca i32, align 4 - %ptr = bitcast i32* %a to i32 (i32)* - %call = call spir_func i32 %ptr(i32 1) - %add = add nsw i32 2, %call - store i32 %add, i32* %a, align 4 - tail call spir_func void @__assert_fail(i8 addrspace(4)* getelementptr inbounds ([2 x i8], [2 x i8] addrspace(4)* addrspacecast ([2 x i8] addrspace(1)* @.str to [2 x i8] addrspace(4)*), i64 0, i64 0), i8 addrspace(4)* getelementptr inbounds ([11 x i8], [11 x i8] addrspace(4)* addrspacecast ([11 x i8] addrspace(1)* @.str.1 to [11 x i8] addrspace(4)*), i64 0, i64 0), i32 8, i8 addrspace(4)* getelementptr inbounds ([11 x i8], [11 x i8] addrspace(4)* addrspacecast ([11 x i8] addrspace(1)* @__PRETTY_FUNCTION__._Z3foov to [11 x i8] addrspace(4)*), i64 0, i64 0)) - ret void -} - -; Function Attrs: nounwind -define dso_local spir_func void @_Z4foo1v() { -entry: - %a = alloca i32, align 4 - store i32 2, i32* %a, align 4 - ret void -} - -; PRESENCE-CHECK-DAG: main_TU1_kernel0 -define dso_local spir_kernel void @main_TU1_kernel0() #2 { -entry: - call spir_func void @_Z3foov() ; call assert - ret void -} - -; ABSENCE-CHECK-NOT: main_TU0_kernel1 -define dso_local spir_kernel void @main_TU0_kernel1() #0 { -entry: - call spir_func void @_Z4foo1v() - ret void -} - -; This function is marked with "referenced-indirectly", but it doesn't call an assert -; Function Attrs: nounwind -define dso_local spir_func void @_Z4foo2v() #1 { -entry: - %a = alloca i32, align 4 - %0 = load i32, i32 addrspace(4)* getelementptr inbounds ([1 x i32], [1 x i32] addrspace(4)* addrspacecast ([1 x i32] addrspace(1)* @_ZL2GV to [1 x i32] addrspace(4)*), i64 0, i64 0), align 4 - %add = add nsw i32 4, %0 - store i32 %add, i32* %a, align 4 - ret void -} - - -; Function Attrs: convergent norecurse mustprogress -define weak dso_local spir_func void @__assert_fail(i8 addrspace(4)* %expr, i8 addrspace(4)* %file, i32 %line, i8 addrspace(4)* %func) local_unnamed_addr { -entry: - %call = tail call spir_func i64 @_Z28__spirv_GlobalInvocationId_xv() - %call1 = tail call spir_func i64 @_Z28__spirv_GlobalInvocationId_yv() - %call2 = tail call spir_func i64 @_Z28__spirv_GlobalInvocationId_zv() - %call3 = tail call spir_func i64 @_Z27__spirv_LocalInvocationId_xv() - %call4 = tail call spir_func i64 @_Z27__spirv_LocalInvocationId_yv() - %call5 = tail call spir_func i64 @_Z27__spirv_LocalInvocationId_zv() - tail call spir_func void @__devicelib_assert_fail(i8 addrspace(4)* %expr, i8 addrspace(4)* %file, i32 %line, i8 addrspace(4)* %func, i64 %call, i64 %call1, i64 %call2, i64 %call3, i64 %call4, i64 %call5) - ret void -} - -; Function Attrs: inlinehint norecurse mustprogress -declare dso_local spir_func i64 @_Z28__spirv_GlobalInvocationId_xv() local_unnamed_addr - -; Function Attrs: inlinehint norecurse mustprogress -declare dso_local spir_func i64 @_Z28__spirv_GlobalInvocationId_yv() local_unnamed_addr - -; Function Attrs: inlinehint norecurse mustprogress -declare dso_local spir_func i64 @_Z28__spirv_GlobalInvocationId_zv() local_unnamed_addr - -; Function Attrs: inlinehint norecurse mustprogress -declare dso_local spir_func i64 @_Z27__spirv_LocalInvocationId_xv() local_unnamed_addr - -; Function Attrs: inlinehint norecurse mustprogress -declare dso_local spir_func i64 @_Z27__spirv_LocalInvocationId_yv() local_unnamed_addr - -; Function Attrs: inlinehint norecurse mustprogress -declare dso_local spir_func i64 @_Z27__spirv_LocalInvocationId_zv() local_unnamed_addr - -; Function Attrs: convergent norecurse mustprogress -define weak dso_local spir_func void @__devicelib_assert_fail(i8 addrspace(4)* %expr, i8 addrspace(4)* %file, i32 %line, i8 addrspace(4)* %func, i64 %gid0, i64 %gid1, i64 %gid2, i64 %lid0, i64 %lid1, i64 %lid2) local_unnamed_addr { -entry: - %call = tail call spir_func i32 (i8 addrspace(2)*, ...) @_Z18__spirv_ocl_printfPU3AS2Kcz(i8 addrspace(2)* getelementptr inbounds ([85 x i8], [85 x i8] addrspace(2)* @_ZL10assert_fmt, i64 0, i64 0), i8 addrspace(4)* %file, i32 %line, i8 addrspace(4)* %func, i64 %gid0, i64 %gid1, i64 %gid2, i64 %lid0, i64 %lid1, i64 %lid2, i8 addrspace(4)* %expr) - ret void -} - -; Function Attrs: convergent -declare dso_local spir_func i32 @_Z18__spirv_ocl_printfPU3AS2Kcz(i8 addrspace(2)*, ...) local_unnamed_addr - -attributes #0 = { "sycl-module-id"="TU1.cpp" } -attributes #1 = { "referenced-indirectly" "sycl-module-id"="TU2.cpp" } -attributes #2 = { "sycl-module-id"="TU2.cpp" } - - -!opencl.spir.version = !{!0, !0} -!spirv.Source = !{!1, !1} - -!0 = !{i32 1, i32 2} -!1 = !{i32 4, i32 100000} diff --git a/llvm/test/tools/sycl-post-link/assert/indirect-with-split.ll b/llvm/test/tools/sycl-post-link/assert/indirect-with-split.ll deleted file mode 100644 index 639dd73359c1b..0000000000000 --- a/llvm/test/tools/sycl-post-link/assert/indirect-with-split.ll +++ /dev/null @@ -1,143 +0,0 @@ -; This test checks that the post-link tool properly generates "assert used" -; property for indirectly called assertions - it should include all the kernels -; even they do not call assertions in their call graph. -; Per design doc, if a callgraph for indirect callable function -; (marked with "referenced-indirectly" attribute in IR) has a call to -; __devicelib_assert_fail, then all kernels in the module are conservatively -; marked as using asserts. - -; RUN: sycl-post-link -properties -split=auto -symbols -S < %s -o %t.table -; RUN: FileCheck %s -input-file=%t_0.prop --check-prefixes=CHECK,CHECK1 \ -; RUN: --implicit-check-not TU0 -; RUN: FileCheck %s -input-file=%t_1.prop --check-prefixes=CHECK,CHECK0 \ -; RUN: --implicit-check-not TU1 --implicit-check-not kernel1 -; -; With recent improvements to device code split, this file is actually being -; split to two modules and one of them does not contain "indirectly-referenced" -; function, meaning that only direct users of 'assert' will be mentioned in -; device image properties. -; -; CHECK: [SYCL/assert used] -; CHECK0: main_TU0_kernel0 -; -; CHECK1-DAG: main_TU1_kernel0 -; CHECK1-DAG: main_TU1_kernel1 - -target datalayout = "e-i64:64-v16:16-v24:32-v32:32-v48:64-v96:128-v192:256-v256:256-v512:512-v1024:1024" -target triple = "spir64-unknown-linux" - -@_ZL2GV = internal addrspace(1) constant [1 x i32] [i32 42], align 4 -@.str = private unnamed_addr addrspace(1) constant [2 x i8] c"0\00", align 1 -@.str.1 = private unnamed_addr addrspace(1) constant [11 x i8] c"assert.cpp\00", align 1 -@__PRETTY_FUNCTION__._Z3foov = private unnamed_addr addrspace(1) constant [11 x i8] c"void foo()\00", align 1 -@__spirv_BuiltInGlobalInvocationId = external dso_local local_unnamed_addr addrspace(1) constant <3 x i64>, align 32 -@__spirv_BuiltInLocalInvocationId = external dso_local local_unnamed_addr addrspace(1) constant <3 x i64>, align 32 -@_ZL10assert_fmt = internal addrspace(2) constant [85 x i8] c"%s:%d: %s: global id: [%lu,%lu,%lu], local id: [%lu,%lu,%lu] Assertion `%s` failed.\0A\00", align 1 - -define dso_local spir_kernel void @main_TU0_kernel0() #0 { -entry: - call spir_func void @_Z3foov() - ret void -} - -define dso_local spir_func void @_Z3foov() { -entry: - %a = alloca i32, align 4 - %ptr = bitcast i32* %a to i32 (i32)* - %call = call spir_func i32 %ptr(i32 1) - %add = add nsw i32 2, %call - store i32 %add, i32* %a, align 4 - tail call spir_func void @__assert_fail(i8 addrspace(4)* getelementptr inbounds ([2 x i8], [2 x i8] addrspace(4)* addrspacecast ([2 x i8] addrspace(1)* @.str to [2 x i8] addrspace(4)*), i64 0, i64 0), i8 addrspace(4)* getelementptr inbounds ([11 x i8], [11 x i8] addrspace(4)* addrspacecast ([11 x i8] addrspace(1)* @.str.1 to [11 x i8] addrspace(4)*), i64 0, i64 0), i32 8, i8 addrspace(4)* getelementptr inbounds ([11 x i8], [11 x i8] addrspace(4)* addrspacecast ([11 x i8] addrspace(1)* @__PRETTY_FUNCTION__._Z3foov to [11 x i8] addrspace(4)*), i64 0, i64 0)) - ret void -} - -define dso_local spir_kernel void @main_TU0_kernel1() #0 { -entry: - call spir_func void @_Z4foo1v() - ret void -} - -; Function Attrs: nounwind -define dso_local spir_func void @_Z4foo1v() { -entry: - %a = alloca i32, align 4 - store i32 2, i32* %a, align 4 - ret void -} - -define dso_local spir_kernel void @main_TU1_kernel0() #2 { -entry: - call spir_func void @_Z3foov() - ret void -} - -define dso_local spir_kernel void @main_TU1_kernel1() #2 { -entry: - call spir_func void @_Z4foo2v() - ret void -} - -; This function is marked with "referenced-indirectly" -; Function Attrs: nounwind -define dso_local spir_func void @_Z4foo2v() #1 { -entry: - %a = alloca i32, align 4 - %0 = load i32, i32 addrspace(4)* getelementptr inbounds ([1 x i32], [1 x i32] addrspace(4)* addrspacecast ([1 x i32] addrspace(1)* @_ZL2GV to [1 x i32] addrspace(4)*), i64 0, i64 0), align 4 - %add = add nsw i32 4, %0 - store i32 %add, i32* %a, align 4 - tail call spir_func void @__assert_fail(i8 addrspace(4)* getelementptr inbounds ([2 x i8], [2 x i8] addrspace(4)* addrspacecast ([2 x i8] addrspace(1)* @.str to [2 x i8] addrspace(4)*), i64 0, i64 0), i8 addrspace(4)* getelementptr inbounds ([11 x i8], [11 x i8] addrspace(4)* addrspacecast ([11 x i8] addrspace(1)* @.str.1 to [11 x i8] addrspace(4)*), i64 0, i64 0), i32 8, i8 addrspace(4)* getelementptr inbounds ([11 x i8], [11 x i8] addrspace(4)* addrspacecast ([11 x i8] addrspace(1)* @__PRETTY_FUNCTION__._Z3foov to [11 x i8] addrspace(4)*), i64 0, i64 0)) - ret void -} - - -; Function Attrs: convergent norecurse mustprogress -define weak dso_local spir_func void @__assert_fail(i8 addrspace(4)* %expr, i8 addrspace(4)* %file, i32 %line, i8 addrspace(4)* %func) local_unnamed_addr { -entry: - %call = tail call spir_func i64 @_Z28__spirv_GlobalInvocationId_xv() - %call1 = tail call spir_func i64 @_Z28__spirv_GlobalInvocationId_yv() - %call2 = tail call spir_func i64 @_Z28__spirv_GlobalInvocationId_zv() - %call3 = tail call spir_func i64 @_Z27__spirv_LocalInvocationId_xv() - %call4 = tail call spir_func i64 @_Z27__spirv_LocalInvocationId_yv() - %call5 = tail call spir_func i64 @_Z27__spirv_LocalInvocationId_zv() - tail call spir_func void @__devicelib_assert_fail(i8 addrspace(4)* %expr, i8 addrspace(4)* %file, i32 %line, i8 addrspace(4)* %func, i64 %call, i64 %call1, i64 %call2, i64 %call3, i64 %call4, i64 %call5) - ret void -} - -; Function Attrs: inlinehint norecurse mustprogress -declare dso_local spir_func i64 @_Z28__spirv_GlobalInvocationId_xv() local_unnamed_addr - -; Function Attrs: inlinehint norecurse mustprogress -declare dso_local spir_func i64 @_Z28__spirv_GlobalInvocationId_yv() local_unnamed_addr - -; Function Attrs: inlinehint norecurse mustprogress -declare dso_local spir_func i64 @_Z28__spirv_GlobalInvocationId_zv() local_unnamed_addr - -; Function Attrs: inlinehint norecurse mustprogress -declare dso_local spir_func i64 @_Z27__spirv_LocalInvocationId_xv() local_unnamed_addr - -; Function Attrs: inlinehint norecurse mustprogress -declare dso_local spir_func i64 @_Z27__spirv_LocalInvocationId_yv() local_unnamed_addr - -; Function Attrs: inlinehint norecurse mustprogress -declare dso_local spir_func i64 @_Z27__spirv_LocalInvocationId_zv() local_unnamed_addr - -; Function Attrs: convergent norecurse mustprogress -define weak dso_local spir_func void @__devicelib_assert_fail(i8 addrspace(4)* %expr, i8 addrspace(4)* %file, i32 %line, i8 addrspace(4)* %func, i64 %gid0, i64 %gid1, i64 %gid2, i64 %lid0, i64 %lid1, i64 %lid2) local_unnamed_addr { -entry: - %call = tail call spir_func i32 (i8 addrspace(2)*, ...) @_Z18__spirv_ocl_printfPU3AS2Kcz(i8 addrspace(2)* getelementptr inbounds ([85 x i8], [85 x i8] addrspace(2)* @_ZL10assert_fmt, i64 0, i64 0), i8 addrspace(4)* %file, i32 %line, i8 addrspace(4)* %func, i64 %gid0, i64 %gid1, i64 %gid2, i64 %lid0, i64 %lid1, i64 %lid2, i8 addrspace(4)* %expr) - ret void -} - -; Function Attrs: convergent -declare dso_local spir_func i32 @_Z18__spirv_ocl_printfPU3AS2Kcz(i8 addrspace(2)*, ...) local_unnamed_addr - -attributes #0 = { "sycl-module-id"="TU1.cpp" } -attributes #1 = { "referenced-indirectly" "sycl-module-id"="TU2.cpp" } -attributes #2 = { "sycl-module-id"="TU2.cpp" } - - -!opencl.spir.version = !{!0, !0} -!spirv.Source = !{!1, !1} - -!0 = !{i32 1, i32 2} -!1 = !{i32 4, i32 100000} diff --git a/llvm/test/tools/sycl-post-link/assert/property-1.ll b/llvm/test/tools/sycl-post-link/assert/property-1.ll deleted file mode 100644 index 2df5e11dbbb07..0000000000000 --- a/llvm/test/tools/sycl-post-link/assert/property-1.ll +++ /dev/null @@ -1,176 +0,0 @@ -; This test checks that the post-link tool properly generates "assert used" -; property - it should include only kernels that call assertions in their call -; graph. - -; RUN: sycl-post-link -properties -split=auto -symbols -S < %s -o %t.table -; RUN: FileCheck %s -input-file=%t_0.prop --implicit-check-not TheKernel2 -; -; RUN: sycl-post-link -properties -split=source -symbols -S < %s -o %t.table -; RUN: FileCheck %s -input-file=%t_0.prop --implicit-check-not TheKernel2 -; -; RUN: sycl-post-link -properties -symbols -S < %s -o %t.table -; RUN: FileCheck %s -input-file=%t_0.prop --implicit-check-not TheKernel2 -; -; RUN: sycl-post-link -properties -split=kernel -symbols -S < %s -o %t.table -; RUN: FileCheck %s -input-file=%t_0.prop --check-prefixes=CHECK-K3 -; RUN: FileCheck %s -input-file=%t_1.prop --check-prefixes=CHECK-K1 -; RUN: FileCheck %s -input-file=%t_2.prop --check-prefixes=CHECK-K2 - -; SYCL source: -; void foo() { -; assert(0); -; } -; void bar() { -; -; } -; void baz() { -; foo(); -; } -; -; int main() { -; queue Q; -; Q.submit([&] (handler& CGH) { -; CGH.parallel_for(range<2>{2, 10}, [=](item<2> It) { -; foo(); -; }); -; CGH.parallel_for(range<2>{2, 10}, [=](item<2> It) { -; bar(); -; }); -; CGH.parallel_for(range<2>{2, 10}, [=](item<2> It) { -; baz(); -; bar(); -; }); -; }); -; Q.wait(); -; return 0; -; } -; -; CHECK: [SYCL/assert used] -; CHECK-DAG: _ZTSZZ4mainENK3$_0clERN2cl4sycl7handlerEE9TheKernel=1|1 -; CHECK-DAG: _ZTSZZ4mainENK3$_0clERN2cl4sycl7handlerEE10TheKernel3=1|1 -; -; CHECK-K1: [SYCL/assert used] -; CHECK-K1: _ZTSZZ4mainENK3$_0clERN2cl4sycl7handlerEE10TheKernel3=1|1 -; CHECK-K2-NOT: [SYCL/assert used] -; CHECK-K3: [SYCL/assert used] -; CHECK-K3: _ZTSZZ4mainENK3$_0clERN2cl4sycl7handlerEE9TheKernel=1|1 - - -target datalayout = "e-i64:64-v16:16-v24:32-v32:32-v48:64-v96:128-v192:256-v256:256-v512:512-v1024:1024-n8:16:32:64" -target triple = "spir64_x86_64-unknown-unknown" - -%"class._ZTSN2cl4sycl5rangeILi2EEE.cl::sycl::range" = type { %"class._ZTSN2cl4sycl6detail5arrayILi2EEE.cl::sycl::detail::array" } -%"class._ZTSN2cl4sycl6detail5arrayILi2EEE.cl::sycl::detail::array" = type { [2 x i64] } -%"class._ZTSZZ4mainENK3$_0clERN2cl4sycl7handlerEEUlNS1_4itemILi2ELb1EEEE_.anon" = type { i8 } - -@.str = private unnamed_addr addrspace(1) constant [2 x i8] c"0\00", align 1 -@.str.1 = private unnamed_addr addrspace(1) constant [11 x i8] c"assert.cpp\00", align 1 -@__PRETTY_FUNCTION__._Z3foov = private unnamed_addr addrspace(1) constant [11 x i8] c"void foo()\00", align 1 -@__spirv_BuiltInGlobalInvocationId = external dso_local addrspace(1) constant <3 x i64>, align 32 -@__spirv_BuiltInLocalInvocationId = external dso_local addrspace(1) constant <3 x i64>, align 32 -@_ZL10assert_fmt = internal addrspace(2) constant [85 x i8] c"%s:%d: %s: global id: [%lu,%lu,%lu], local id: [%lu,%lu,%lu] Assertion `%s` failed.\0A\00", align 1 - -; Function Attrs: convergent norecurse nounwind mustprogress -define dso_local spir_func void @_Z3foov() { -entry: - tail call spir_func void @__assert_fail(i8 addrspace(4)* getelementptr inbounds ([2 x i8], [2 x i8] addrspace(4)* addrspacecast ([2 x i8] addrspace(1)* @.str to [2 x i8] addrspace(4)*), i64 0, i64 0), i8 addrspace(4)* getelementptr inbounds ([11 x i8], [11 x i8] addrspace(4)* addrspacecast ([11 x i8] addrspace(1)* @.str.1 to [11 x i8] addrspace(4)*), i64 0, i64 0), i32 8, i8 addrspace(4)* getelementptr inbounds ([11 x i8], [11 x i8] addrspace(4)* addrspacecast ([11 x i8] addrspace(1)* @__PRETTY_FUNCTION__._Z3foov to [11 x i8] addrspace(4)*), i64 0, i64 0)) - ret void -} - -; Function Attrs: convergent norecurse -define weak_odr dso_local spir_kernel void @"_ZTSZZ4mainENK3$_0clERN2cl4sycl7handlerEE9TheKernel"() #0 { -entry: - call spir_func void @_Z3foov() - ret void -} - -; Function Attrs: nofree norecurse nosync nounwind readnone willreturn mustprogress -define dso_local spir_func void @_Z3barv() { -entry: - ret void -} - -; Function Attrs: norecurse -define weak_odr dso_local spir_kernel void @"_ZTSZZ4mainENK3$_0clERN2cl4sycl7handlerEE10TheKernel2"() #1 { -entry: - call spir_func void @_Z3barv() - ret void -} - -; Function Attrs: convergent inlinehint norecurse nounwind mustprogress -define internal spir_func void @"_ZZZ4mainENK3$_0clERN2cl4sycl7handlerEENKUlNS1_4itemILi2ELb1EEEE1_clES5_"() unnamed_addr #8 align 2 { -entry: - call spir_func void @_Z3bazv() - call spir_func void @_Z3barv() - ret void -} - -; Function Attrs: convergent norecurse nounwind mustprogress -define dso_local spir_func void @_Z3bazv() { -entry: - tail call spir_func void @__assert_fail(i8 addrspace(4)* getelementptr inbounds ([2 x i8], [2 x i8] addrspace(4)* addrspacecast ([2 x i8] addrspace(1)* @.str to [2 x i8] addrspace(4)*), i64 0, i64 0), i8 addrspace(4)* getelementptr inbounds ([11 x i8], [11 x i8] addrspace(4)* addrspacecast ([11 x i8] addrspace(1)* @.str.1 to [11 x i8] addrspace(4)*), i64 0, i64 0), i32 8, i8 addrspace(4)* getelementptr inbounds ([11 x i8], [11 x i8] addrspace(4)* addrspacecast ([11 x i8] addrspace(1)* @__PRETTY_FUNCTION__._Z3foov to [11 x i8] addrspace(4)*), i64 0, i64 0)) - ret void -} - -; Function Attrs: convergent norecurse -define weak_odr dso_local spir_kernel void @"_ZTSZZ4mainENK3$_0clERN2cl4sycl7handlerEE10TheKernel3"() #0 { -entry: - call spir_func void @"_ZZZ4mainENK3$_0clERN2cl4sycl7handlerEENKUlNS1_4itemILi2ELb1EEEE1_clES5_"() - ret void -} - -; Function Attrs: convergent norecurse mustprogress -define weak dso_local spir_func void @__assert_fail(i8 addrspace(4)* %expr, i8 addrspace(4)* %file, i32 %line, i8 addrspace(4)* %func) { -entry: - %call = tail call spir_func i64 @_Z28__spirv_GlobalInvocationId_xv() - %call1 = tail call spir_func i64 @_Z28__spirv_GlobalInvocationId_yv() - %call2 = tail call spir_func i64 @_Z28__spirv_GlobalInvocationId_zv() - %call3 = tail call spir_func i64 @_Z27__spirv_LocalInvocationId_xv() - %call4 = tail call spir_func i64 @_Z27__spirv_LocalInvocationId_yv() - %call5 = tail call spir_func i64 @_Z27__spirv_LocalInvocationId_zv() - tail call spir_func void @__devicelib_assert_fail(i8 addrspace(4)* %expr, i8 addrspace(4)* %file, i32 %line, i8 addrspace(4)* %func, i64 %call, i64 %call1, i64 %call2, i64 %call3, i64 %call4, i64 %call5) - ret void -} - -; Function Attrs: inlinehint norecurse mustprogress -declare dso_local spir_func i64 @_Z28__spirv_GlobalInvocationId_xv() local_unnamed_addr - -; Function Attrs: inlinehint norecurse mustprogress -declare dso_local spir_func i64 @_Z28__spirv_GlobalInvocationId_yv() local_unnamed_addr - -; Function Attrs: inlinehint norecurse mustprogress -declare dso_local spir_func i64 @_Z28__spirv_GlobalInvocationId_zv() local_unnamed_addr - -; Function Attrs: inlinehint norecurse mustprogress -declare dso_local spir_func i64 @_Z27__spirv_LocalInvocationId_xv() local_unnamed_addr - -; Function Attrs: inlinehint norecurse mustprogress -declare dso_local spir_func i64 @_Z27__spirv_LocalInvocationId_yv() local_unnamed_addr - -; Function Attrs: inlinehint norecurse mustprogress -declare dso_local spir_func i64 @_Z27__spirv_LocalInvocationId_zv() local_unnamed_addr - -; Function Attrs: convergent norecurse mustprogress -define weak dso_local spir_func void @__devicelib_assert_fail(i8 addrspace(4)* %expr, i8 addrspace(4)* %file, i32 %line, i8 addrspace(4)* %func, i64 %gid0, i64 %gid1, i64 %gid2, i64 %lid0, i64 %lid1, i64 %lid2) { -entry: - %call = tail call spir_func i32 (i8 addrspace(2)*, ...) @_Z18__spirv_ocl_printfPU3AS2Kcz(i8 addrspace(2)* getelementptr inbounds ([85 x i8], [85 x i8] addrspace(2)* @_ZL10assert_fmt, i64 0, i64 0), i8 addrspace(4)* %file, i32 %line, i8 addrspace(4)* %func, i64 %gid0, i64 %gid1, i64 %gid2, i64 %lid0, i64 %lid1, i64 %lid2, i8 addrspace(4)* %expr) - ret void -} - -; Function Attrs: convergent -declare dso_local spir_func i32 @_Z18__spirv_ocl_printfPU3AS2Kcz(i8 addrspace(2)*, ...) - -attributes #0 = { convergent norecurse "frame-pointer"="all" "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "sycl-module-id"="assert.cpp" "uniform-work-group-size"="true" } -attributes #1 = { norecurse "frame-pointer"="all" "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "sycl-module-id"="assert.cpp" "uniform-work-group-size"="true" } - -!opencl.spir.version = !{!0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0} -!spirv.Source = !{!1, !1, !1, !1, !1, !1, !1, !1, !1, !1, !1} -!llvm.ident = !{!2, !2, !2, !2, !2, !2, !2, !2, !2, !2, !2} -!llvm.module.flags = !{!3, !4} - -!0 = !{i32 1, i32 2} -!1 = !{i32 4, i32 100000} -!2 = !{!"clang version 13.0.0 (https://github.com/intel/llvm)"} -!3 = !{i32 1, !"wchar_size", i32 4} -!4 = !{i32 7, !"frame-pointer", i32 2} -!5 = !{i32 -1, i32 -1} diff --git a/llvm/test/tools/sycl-post-link/assert/property-2.ll b/llvm/test/tools/sycl-post-link/assert/property-2.ll deleted file mode 100644 index 4fafcde79e829..0000000000000 --- a/llvm/test/tools/sycl-post-link/assert/property-2.ll +++ /dev/null @@ -1,393 +0,0 @@ -; This test checks that the post-link tool properly generates "assert used" -; property - it should include only kernels that call assertions in their call -; graph. - -; RUN: sycl-post-link -properties -split=auto -symbols -S < %s -o %t.table -; RUN: FileCheck %s -input-file=%t_0.prop -check-prefix=PRESENCE-CHECK -; RUN: FileCheck %s -input-file=%t_0.prop -check-prefix=ABSENCE-CHECK - -; SYCL source: -; void assert_func() { -; assert(0); -; } -; -; void A_excl() {} -; void B_incl() { assert_func(); } -; -; void A_incl() { assert_func(); } -; void B_excl() {} -; -; void C_excl() {} -; void D_incl() { assert_func(); } -; void common() { -; C_excl(); -; D_incl(); -; } -; -; void C_incl() { assert_func(); } -; void D_excl() {} -; void common2() { -; C_incl(); -; D_excl(); -; } -; -; void E_excl() {} -; void F_incl() { assert_func(); } -; -; void I_incl() { assert_func(); } -; void common3() { I_incl();} -; void G() { common3(); } -; void H() { common3(); } -; -; void no_assert_func() { -; return; -; } -; void common4() { -; assert_func(); -; no_assert_func(); -; } -; void J() { -; common4(); -; } -; -; int main() { -; queue Q; -; Q.submit([&] (handler& CGH) { -; CGH.parallel_for(range<1>{1}, [=](id<1> i) { -; J(); -; }); -; CGH.parallel_for(range<1>{1}, [=](id<1> i) { -; common4(); -; }); -; CGH.parallel_for(range<1>{1}, [=](id<1> i) { -; A_excl(); -; B_incl(); -; }); -; CGH.parallel_for(range<1>{1}, [=](id<1> i) { -; A_incl(); -; B_excl(); -; }); -; -; CGH.parallel_for(range<1>{1}, [=](id<1> i) { -; common(); -; }); -; CGH.parallel_for(range<1>{1}, [=](id<1> i) { -; common2(); -; }); -; -; CGH.parallel_for(range<1>{1}, [=](id<1> i) { -; B_incl(); -; A_excl(); -; }); -; -; CGH.parallel_for(range<1>{1}, [=](id<1> i) { -; E_excl(); -; E_excl(); -; }); -; CGH.parallel_for(range<1>{1}, [=](id<1> i) { -; F_incl(); -; F_incl(); -; }); -; -; CGH.parallel_for(range<1>{1}, [=](id<1> i) { -; G(); -; H(); -; }); -; }); -; Q.wait(); -; return 0; -; } - -target datalayout = "e-i64:64-v16:16-v24:32-v32:32-v48:64-v96:128-v192:256-v256:256-v512:512-v1024:1024-n8:16:32:64" -target triple = "spir64_x86_64-unknown-unknown" - -@.str = private unnamed_addr addrspace(1) constant [2 x i8] c"0\00", align 1 -@.str.1 = private unnamed_addr addrspace(1) constant [16 x i8] c"assert_test.cpp\00", align 1 -@__PRETTY_FUNCTION__._Z11assert_funcv = private unnamed_addr addrspace(1) constant [19 x i8] c"void assert_func()\00", align 1 -@_ZL10assert_fmt = internal addrspace(2) constant [85 x i8] c"%s:%d: %s: global id: [%lu,%lu,%lu], local id: [%lu,%lu,%lu] Assertion `%s` failed.\0A\00", align 1 - -; PRESENCE-CHECK: [SYCL/assert used] - -; Function Attrs: convergent noinline norecurse optnone mustprogress -define dso_local spir_func void @_Z1Jv() #3 { -entry: - call spir_func void @_Z7common4v() - ret void -} - -; Function Attrs: convergent noinline norecurse optnone mustprogress -define dso_local spir_func void @_Z7common4v() #3 { -entry: - call spir_func void @_Z11assert_funcv() - call spir_func void @_Z14no_assert_funcv() - ret void -} - -; PRESENCE-CHECK-DAG: _ZTSZZ4mainENKUlRN2cl4sycl7handlerEE_clES2_E7Kernel9 -; Function Attrs: convergent noinline norecurse mustprogress -define weak_odr dso_local spir_kernel void @_ZTSZZ4mainENKUlRN2cl4sycl7handlerEE_clES2_E7Kernel9() #0 { -entry: - call spir_func void @_Z1Jv() - ret void -} - -; PRESENCE-CHECK-DAG: _ZTSZZ4mainENKUlRN2cl4sycl7handlerEE_clES2_E8Kernel10 -; Function Attrs: convergent noinline norecurse optnone mustprogress -define weak_odr dso_local spir_kernel void @_ZTSZZ4mainENKUlRN2cl4sycl7handlerEE_clES2_E8Kernel10() #0 { -entry: - call spir_func void @_Z7common4v() - ret void -} - -; Function Attrs: convergent noinline norecurse nounwind optnone mustprogress -define dso_local spir_func void @_Z14no_assert_funcv() #2 { -entry: - ret void -} - -; Function Attrs: convergent norecurse nounwind mustprogress -define dso_local spir_func void @_Z6B_inclv() local_unnamed_addr { -entry: - call spir_func void @_Z11assert_funcv() - ret void -} - -; Function Attrs: convergent norecurse nounwind mustprogress -define dso_local spir_func void @_Z11assert_funcv() local_unnamed_addr { -entry: - call spir_func void @__assert_fail(i8 addrspace(4)* getelementptr inbounds ([2 x i8], [2 x i8] addrspace(4)* addrspacecast ([2 x i8] addrspace(1)* @.str to [2 x i8] addrspace(4)*), i64 0, i64 0), i8 addrspace(4)* getelementptr inbounds ([16 x i8], [16 x i8] addrspace(4)* addrspacecast ([16 x i8] addrspace(1)* @.str.1 to [16 x i8] addrspace(4)*), i64 0, i64 0), i32 7, i8 addrspace(4)* getelementptr inbounds ([19 x i8], [19 x i8] addrspace(4)* addrspacecast ([19 x i8] addrspace(1)* @__PRETTY_FUNCTION__._Z11assert_funcv to [19 x i8] addrspace(4)*), i64 0, i64 0)) - ret void -} - -; Function Attrs: nofree norecurse nosync nounwind readnone willreturn mustprogress -define dso_local spir_func void @_Z6A_exclv() local_unnamed_addr { -entry: - ret void -} - -; PRESENCE-CHECK-DAG: _ZTSZZ4mainENK3$_0clERN2cl4sycl7handlerEE6Kernel -; Function Attrs: convergent norecurse mustprogress -define weak_odr dso_local spir_kernel void @"_ZTSZZ4mainENK3$_0clERN2cl4sycl7handlerEE6Kernel"() local_unnamed_addr #0 { -entry: - call spir_func void @_Z6A_exclv() - call spir_func void @_Z6B_inclv() - ret void -} - -; Function Attrs: convergent norecurse nounwind mustprogress -define dso_local spir_func void @_Z6A_inclv() local_unnamed_addr { -entry: - call spir_func void @_Z11assert_funcv() - ret void -} - -; Function Attrs: nofree norecurse nosync nounwind readnone willreturn mustprogress -define dso_local spir_func void @_Z6B_exclv() local_unnamed_addr { -entry: - ret void -} - -; PRESENCE-CHECK-DAG: _ZTSZZ4mainENK3$_0clERN2cl4sycl7handlerEE7Kernel2 -; Function Attrs: convergent norecurse mustprogress -define weak_odr dso_local spir_kernel void @"_ZTSZZ4mainENK3$_0clERN2cl4sycl7handlerEE7Kernel2"() local_unnamed_addr #0 { -entry: - call spir_func void @_Z6A_inclv() - call spir_func void @_Z6B_exclv() - ret void -} - -; Function Attrs: convergent norecurse nounwind mustprogress -define dso_local spir_func void @_Z6commonv() local_unnamed_addr { -entry: - call spir_func void @_Z6C_exclv() - call spir_func void @_Z6D_inclv() - ret void -} - -; Function Attrs: convergent norecurse nounwind mustprogress -define dso_local spir_func void @_Z6D_inclv() local_unnamed_addr { -entry: - call spir_func void @_Z11assert_funcv() - ret void -} - -; Function Attrs: nofree norecurse nosync nounwind readnone willreturn mustprogress -define dso_local spir_func void @_Z6C_exclv() local_unnamed_addr { -entry: - ret void -} - -; PRESENCE-CHECK-DAG: _ZTSZZ4mainENK3$_0clERN2cl4sycl7handlerEE7Kernel3 -; Function Attrs: convergent norecurse mustprogress -define weak_odr dso_local spir_kernel void @"_ZTSZZ4mainENK3$_0clERN2cl4sycl7handlerEE7Kernel3"() local_unnamed_addr #0 { -entry: - call spir_func void @_Z6commonv() - ret void -} - -; Function Attrs: convergent norecurse nounwind mustprogress -define dso_local spir_func void @_Z7common2v() local_unnamed_addr { -entry: - call spir_func void @_Z6C_inclv() - ret void -} - -; Function Attrs: convergent norecurse nounwind mustprogress -define dso_local spir_func void @_Z6C_inclv() local_unnamed_addr { -entry: - call spir_func void @_Z11assert_funcv() - ret void -} - -; Function Attrs: nofree norecurse nosync nounwind readnone willreturn mustprogress -define dso_local spir_func void @_Z6D_exclv() local_unnamed_addr { -entry: - ret void -} - -; PRESENCE-CHECK-DAG: _ZTSZZ4mainENK3$_0clERN2cl4sycl7handlerEE7Kernel4 -; Function Attrs: convergent norecurse mustprogress -define weak_odr dso_local spir_kernel void @"_ZTSZZ4mainENK3$_0clERN2cl4sycl7handlerEE7Kernel4"() local_unnamed_addr #0 { -entry: - call spir_func void @_Z7common2v() - ret void -} - -; PRESENCE-CHECK-DAG: _ZTSZZ4mainENK3$_0clERN2cl4sycl7handlerEE7Kernel5 -; Function Attrs: convergent norecurse mustprogress -define weak_odr dso_local spir_kernel void @"_ZTSZZ4mainENK3$_0clERN2cl4sycl7handlerEE7Kernel5"() local_unnamed_addr #0 { -entry: - call spir_func void @_Z6B_inclv() - call spir_func void @_Z6A_exclv() - ret void -} - -; Function Attrs: nofree norecurse nosync nounwind readnone willreturn mustprogress -define dso_local spir_func void @_Z6E_exclv() local_unnamed_addr { -entry: - ret void -} - -; Function Attrs: convergent norecurse nounwind mustprogress -define dso_local spir_func void @_Z6F_inclv() local_unnamed_addr { -entry: - call spir_func void @_Z11assert_funcv() - ret void -} - -; PRESENCE-CHECK-DAG: _ZTSZZ4mainENK3$_0clERN2cl4sycl7handlerEE7Kernel7 -; Function Attrs: convergent norecurse mustprogress -define weak_odr dso_local spir_kernel void @"_ZTSZZ4mainENK3$_0clERN2cl4sycl7handlerEE7Kernel7"() local_unnamed_addr #0 { -entry: - call spir_func void @_Z6F_inclv() - call spir_func void @_Z6F_inclv() - ret void -} - -; Function Attrs: convergent inlinehint norecurse nounwind mustprogress -define internal spir_func void @"_ZZZ4mainENK3$_0clERN2cl4sycl7handlerEENKUlNS1_2idILi1EEEE6_clES5_"() unnamed_addr align 2 { -entry: - call spir_func void @_Z1Gv() - call spir_func void @_Z1Hv() - ret void -} - -; Function Attrs: convergent norecurse nounwind mustprogress -define dso_local spir_func void @_Z1Gv() local_unnamed_addr { -entry: - call spir_func void @_Z7common3v() - ret void -} - -; Function Attrs: convergent norecurse nounwind mustprogress -define dso_local spir_func void @_Z1Hv() local_unnamed_addr { -entry: - call spir_func void @_Z7common3v() - ret void -} - -; Function Attrs: convergent norecurse nounwind mustprogress -define dso_local spir_func void @_Z7common3v() local_unnamed_addr { -entry: - call spir_func void @_Z6I_inclv() - ret void -} - -; Function Attrs: convergent norecurse nounwind mustprogress -define dso_local spir_func void @_Z6I_inclv() local_unnamed_addr { -entry: - call spir_func void @_Z11assert_funcv() - ret void -} - -; PRESENCE-CHECK-DAG: _ZTSZZ4mainENK3$_0clERN2cl4sycl7handlerEE7Kernel8 -; Function Attrs: convergent norecurse mustprogress -define weak_odr dso_local spir_kernel void @"_ZTSZZ4mainENK3$_0clERN2cl4sycl7handlerEE7Kernel8"() local_unnamed_addr #0 { - call spir_func void @_Z1Gv() - call spir_func void @_Z1Hv() - ret void -} - -; ABSENCE-CHECK-NOT: _ZTSZZ4mainENK3$_0clERN2cl4sycl7handlerEE7Kernel6 -; Function Attrs: convergent norecurse mustprogress -define weak_odr dso_local spir_kernel void @"_ZTSZZ4mainENK3$_0clERN2cl4sycl7handlerEE7Kernel6"() local_unnamed_addr #0 { -entry: - call spir_func void @_Z6E_exclv() - call spir_func void @_Z6E_exclv() - ret void -} - -; Function Attrs: convergent norecurse mustprogress -define weak dso_local spir_func void @__assert_fail(i8 addrspace(4)* %expr, i8 addrspace(4)* %file, i32 %line, i8 addrspace(4)* %func) local_unnamed_addr { -entry: - %call = tail call spir_func i64 @_Z28__spirv_GlobalInvocationId_xv() - %call1 = tail call spir_func i64 @_Z28__spirv_GlobalInvocationId_yv() - %call2 = tail call spir_func i64 @_Z28__spirv_GlobalInvocationId_zv() - %call3 = tail call spir_func i64 @_Z27__spirv_LocalInvocationId_xv() - %call4 = tail call spir_func i64 @_Z27__spirv_LocalInvocationId_yv() - %call5 = tail call spir_func i64 @_Z27__spirv_LocalInvocationId_zv() - tail call spir_func void @__devicelib_assert_fail(i8 addrspace(4)* %expr, i8 addrspace(4)* %file, i32 %line, i8 addrspace(4)* %func, i64 %call, i64 %call1, i64 %call2, i64 %call3, i64 %call4, i64 %call5) - ret void -} - -; Function Attrs: inlinehint norecurse mustprogress -declare dso_local spir_func i64 @_Z28__spirv_GlobalInvocationId_xv() local_unnamed_addr - -; Function Attrs: inlinehint norecurse mustprogress -declare dso_local spir_func i64 @_Z28__spirv_GlobalInvocationId_yv() local_unnamed_addr - -; Function Attrs: inlinehint norecurse mustprogress -declare dso_local spir_func i64 @_Z28__spirv_GlobalInvocationId_zv() local_unnamed_addr - -; Function Attrs: inlinehint norecurse mustprogress -declare dso_local spir_func i64 @_Z27__spirv_LocalInvocationId_xv() local_unnamed_addr - -; Function Attrs: inlinehint norecurse mustprogress -declare dso_local spir_func i64 @_Z27__spirv_LocalInvocationId_yv() local_unnamed_addr - -; Function Attrs: inlinehint norecurse mustprogress -declare dso_local spir_func i64 @_Z27__spirv_LocalInvocationId_zv() local_unnamed_addr - -; Function Attrs: convergent norecurse mustprogress -define weak dso_local spir_func void @__devicelib_assert_fail(i8 addrspace(4)* %expr, i8 addrspace(4)* %file, i32 %line, i8 addrspace(4)* %func, i64 %gid0, i64 %gid1, i64 %gid2, i64 %lid0, i64 %lid1, i64 %lid2) { -entry: - %call = tail call spir_func i32 (i8 addrspace(2)*, ...) @_Z18__spirv_ocl_printfPU3AS2Kcz(i8 addrspace(2)* getelementptr inbounds ([85 x i8], [85 x i8] addrspace(2)* @_ZL10assert_fmt, i64 0, i64 0), i8 addrspace(4)* %file, i32 %line, i8 addrspace(4)* %func, i64 %gid0, i64 %gid1, i64 %gid2, i64 %lid0, i64 %lid1, i64 %lid2, i8 addrspace(4)* %expr) - ret void -} - -; Function Attrs: convergent -declare dso_local spir_func i32 @_Z18__spirv_ocl_printfPU3AS2Kcz(i8 addrspace(2)*, ...) local_unnamed_addr - -attributes #0 = { convergent norecurse mustprogress "frame-pointer"="all" "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "sycl-module-id"="assert_test.cpp" "uniform-work-group-size"="true" } - -!opencl.spir.version = !{!0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0} -!spirv.Source = !{!1, !1, !1, !1, !1, !1, !1, !1, !1, !1, !1} -!llvm.ident = !{!2, !2, !2, !2, !2, !2, !2, !2, !2, !2, !2} -!llvm.module.flags = !{!3, !4} - -!0 = !{i32 1, i32 2} -!1 = !{i32 4, i32 100000} -!2 = !{!"clang version 13.0.0 (https://github.com/intel/llvm)"} -!3 = !{i32 1, !"wchar_size", i32 4} -!4 = !{i32 7, !"frame-pointer", i32 2} -!5 = !{i32 -1, i32 -1} diff --git a/sycl/unittests/program_manager/Cleanup.cpp b/sycl/unittests/program_manager/Cleanup.cpp index 0c3926dde9be1..fa5b356b13eee 100644 --- a/sycl/unittests/program_manager/Cleanup.cpp +++ b/sycl/unittests/program_manager/Cleanup.cpp @@ -73,8 +73,6 @@ class ProgramManagerExposed : public sycl::detail::ProgramManager { return m_EliminatedKernelArgMasks; } - KernelUsesAssertSet &getKernelUsesAssert() { return m_KernelUsesAssert; } - std::unordered_map & getKernelImplicitLocalArgPos() { return m_KernelImplicitLocalArgPos; @@ -309,9 +307,6 @@ void checkAllInvolvedContainers(ProgramManagerExposed &PM, "Kernel name reference count " + CommentPostfix); EXPECT_EQ(PM.getEliminatedKernelArgMask().size(), ExpectedImgCount) << "Eliminated kernel arg mask " + CommentPostfix; - checkContainer(PM.getKernelUsesAssert(), ExpectedEntryCount, - generateRefNames(ImgIds, "Kernel"), - "KernelUsesAssert " + CommentPostfix); EXPECT_EQ(PM.getKernelImplicitLocalArgPos().size(), ExpectedEntryCount) << "Kernel implicit local arg pos " + CommentPostfix; From e58a3d9beae59b4e47f13e5a66a42eba7e923283 Mon Sep 17 00:00:00 2001 From: jinge90 Date: Wed, 12 Nov 2025 10:46:31 +0800 Subject: [PATCH 6/7] clean up PropSet doc Signed-off-by: jinge90 --- sycl/doc/design/PropertySets.md | 9 --------- 1 file changed, 9 deletions(-) diff --git a/sycl/doc/design/PropertySets.md b/sycl/doc/design/PropertySets.md index 1a55b544154fc..4cfdb552d6622 100644 --- a/sycl/doc/design/PropertySets.md +++ b/sycl/doc/design/PropertySets.md @@ -130,15 +130,6 @@ Miscellaneous properties: | "specConstsReplacedWithDefault" | 32 bit integer. ("1") | 1 if the specialization constants have been replaced by their default values and 0 or missing otherwise. | -### [SYCL/assert used] - -__Key:__ Kernel name. - -__Value type:__ 32 bit integer. ("1") - -__Value:__ 1 if the kernel uses assertions and 0 or missing otherwise. - - ### [SYCL/kernel names] __Key:__ Kernel name. From 5468e22331b09900a7d12d66577f7f14cc2d1e2b Mon Sep 17 00:00:00 2001 From: jinge90 Date: Tue, 18 Nov 2025 11:28:24 +0800 Subject: [PATCH 7/7] revert unneeded change in PM Signed-off-by: jinge90 --- sycl/source/detail/program_manager/program_manager.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/sycl/source/detail/program_manager/program_manager.cpp b/sycl/source/detail/program_manager/program_manager.cpp index 2da2f2c6c1d7b..d7c5525587076 100644 --- a/sycl/source/detail/program_manager/program_manager.cpp +++ b/sycl/source/detail/program_manager/program_manager.cpp @@ -2106,11 +2106,12 @@ void ProgramManager::addImages(sycl_device_binaries DeviceBinary) { } template -void removeFromMultimapByVal(MultimapT &Map, const KeyT &Key, const ValT &Val) { +void removeFromMultimapByVal(MultimapT &Map, const KeyT &Key, const ValT &Val, + bool AssertContains = true) { auto [RangeBegin, RangeEnd] = Map.equal_range(Key); auto It = std::find_if(RangeBegin, RangeEnd, [&](const auto &Pair) { return Pair.second == Val; }); - if (It == RangeEnd) + if (!AssertContains && It == RangeEnd) return; assert(It != RangeEnd); Map.erase(It); @@ -2237,7 +2238,8 @@ void ProgramManager::removeImages(sycl_device_binaries DeviceBinary) { // unmap loop) for (const sycl_device_binary_property &ESProp : Img->getExportedSymbols()) { - removeFromMultimapByVal(m_ExportedSymbolImages, ESProp->Name, Img); + removeFromMultimapByVal(m_ExportedSymbolImages, ESProp->Name, Img, + /*AssertContains*/ false); } m_DeviceImages.erase(DevImgIt);