@@ -492,12 +492,13 @@ event handler::finalize() {
492492
493493 // Extract arguments from the kernel lambda, if required.
494494 // Skipping this is currently limited to simple kernels on the fast path.
495- if (type == detail::CGType::Kernel && impl->MKernelFuncPtr &&
496- (!KernelFastPath || impl->MKernelHasSpecialCaptures )) {
495+ if (type == detail::CGType::Kernel && impl->MKernelData . getKernelFuncPtr () &&
496+ (!KernelFastPath || impl->MKernelData . hasSpecialCaptures () )) {
497497 clearArgs ();
498- extractArgsAndReqsFromLambda ((char *)impl->MKernelFuncPtr ,
499- impl->MKernelParamDescGetter ,
500- impl->MKernelNumArgs , impl->MKernelIsESIMD );
498+ extractArgsAndReqsFromLambda ((char *)impl->MKernelData .getKernelFuncPtr (),
499+ impl->MKernelData .getKernelParamDescGetter (),
500+ impl->MKernelData .getKernelNumArgs (),
501+ impl->MKernelData .isESIMD ());
501502 }
502503
503504 // According to 4.7.6.9 of SYCL2020 spec, if a placeholder accessor is passed
@@ -614,7 +615,8 @@ event handler::finalize() {
614615 bool KernelUsesAssert =
615616 !(MKernel && MKernel->isInterop ()) &&
616617 detail::ProgramManager::getInstance ().kernelUsesAssert (
617- toKernelNameStrT (MKernelName), impl->MKernelNameBasedCachePtr );
618+ toKernelNameStrT (MKernelName),
619+ impl->MKernelData .getKernelNameBasedCachePtr ());
618620 DiscardEvent = !KernelUsesAssert;
619621 }
620622
@@ -635,7 +637,8 @@ event handler::finalize() {
635637 StreamID = xptiRegisterStream (detail::SYCL_STREAM_NAME);
636638 std::tie (CmdTraceEvent, InstanceID) = emitKernelInstrumentationData (
637639 StreamID, MKernel, MCodeLoc, impl->MIsTopCodeLoc ,
638- MKernelName.data (), impl->MKernelNameBasedCachePtr ,
640+ MKernelName.data (),
641+ impl->MKernelData .getKernelNameBasedCachePtr (),
639642 impl->get_queue_or_null (), impl->MNDRDesc , KernelBundleImpPtr,
640643 impl->MArgs );
641644 detail::emitInstrumentationGeneral (StreamID, InstanceID,
@@ -652,11 +655,14 @@ event handler::finalize() {
652655 enqueueImpKernel (
653656 impl->get_queue (), impl->MNDRDesc , impl->MArgs , KernelBundleImpPtr,
654657 MKernel.get (), toKernelNameStrT (MKernelName),
655- impl->MKernelNameBasedCachePtr , RawEvents, ResultEvent.get (),
656- nullptr , impl->MKernelCacheConfig , impl->MKernelIsCooperative ,
657- impl->MKernelUsesClusterLaunch , impl->MKernelWorkGroupMemorySize ,
658- BinImage, impl->MKernelFuncPtr , impl->MKernelNumArgs ,
659- impl->MKernelParamDescGetter , impl->MKernelHasSpecialCaptures );
658+ impl->MKernelData .getKernelNameBasedCachePtr (), RawEvents,
659+ ResultEvent.get (), nullptr , impl->MKernelCacheConfig ,
660+ impl->MKernelIsCooperative , impl->MKernelUsesClusterLaunch ,
661+ impl->MKernelWorkGroupMemorySize , BinImage,
662+ impl->MKernelData .getKernelFuncPtr (),
663+ impl->MKernelData .getKernelNumArgs (),
664+ impl->MKernelData .getKernelParamDescGetter (),
665+ impl->MKernelData .hasSpecialCaptures ());
660666#ifdef XPTI_ENABLE_INSTRUMENTATION
661667 if (xptiEnabled) {
662668 // Emit signal only when event is created
@@ -713,9 +719,9 @@ event handler::finalize() {
713719 impl->MNDRDesc , std::move (MHostKernel), std::move (MKernel),
714720 std::move (impl->MKernelBundle ), std::move (impl->CGData ),
715721 std::move (impl->MArgs ), toKernelNameStrT (MKernelName),
716- impl->MKernelNameBasedCachePtr , std::move (MStreamStorage ),
717- std::move (impl-> MAuxiliaryResources ), getType ( ),
718- impl->MKernelCacheConfig , impl->MKernelIsCooperative ,
722+ impl->MKernelData . getKernelNameBasedCachePtr ( ),
723+ std::move (MStreamStorage ), std::move (impl-> MAuxiliaryResources ),
724+ getType (), impl->MKernelCacheConfig , impl->MKernelIsCooperative ,
719725 impl->MKernelUsesClusterLaunch , impl->MKernelWorkGroupMemorySize ,
720726 MCodeLoc));
721727 break ;
@@ -2596,18 +2602,16 @@ void handler::setNDRangeDescriptor(sycl::range<1> NumWorkItems,
25962602
25972603void handler::setKernelNameBasedCachePtr (
25982604 sycl::detail::KernelNameBasedCacheT *KernelNameBasedCachePtr) {
2599- impl->MKernelNameBasedCachePtr = KernelNameBasedCachePtr;
2605+ impl->MKernelData . setKernelNameBasedCachePtr ( KernelNameBasedCachePtr) ;
26002606}
26012607
26022608void handler::setKernelInfo (
26032609 void *KernelFuncPtr, int KernelNumArgs,
26042610 detail::kernel_param_desc_t (*KernelParamDescGetter)(int ),
26052611 bool KernelIsESIMD, bool KernelHasSpecialCaptures) {
2606- impl->MKernelFuncPtr = KernelFuncPtr;
2607- impl->MKernelNumArgs = KernelNumArgs;
2608- impl->MKernelParamDescGetter = KernelParamDescGetter;
2609- impl->MKernelIsESIMD = KernelIsESIMD;
2610- impl->MKernelHasSpecialCaptures = KernelHasSpecialCaptures;
2612+ impl->MKernelData .setKernelInfo (KernelFuncPtr, KernelNumArgs,
2613+ KernelParamDescGetter, KernelIsESIMD,
2614+ KernelHasSpecialCaptures);
26112615}
26122616
26132617void handler::instantiateKernelOnHost (void *InstantiateKernelOnHostPtr) {
0 commit comments