@@ -710,17 +710,19 @@ class queue_impl {
710710 void *getTraceEvent () { return MTraceEvent; }
711711
712712 void setExternalEvent (const event &Event) {
713- MInOrderExternalEvent.put ([&Event](std::optional<event> &InOrderExternalEvent){
714- InOrderExternalEvent = Event;
715- });
713+ MInOrderExternalEvent.put (
714+ [&Event](std::optional<event> &InOrderExternalEvent){
715+ InOrderExternalEvent = Event;
716+ });
716717 }
717718
718719 std::optional<event> popExternalEvent () {
719720 std::optional<event> Result = std::nullopt ;
720721
721- MInOrderExternalEvent.get ([&Result](std::optional<event> &InOrderExternalEvent) {
722- std::swap (Result, InOrderExternalEvent);
723- });
722+ MInOrderExternalEvent.get (
723+ [&Result](std::optional<event> &InOrderExternalEvent) {
724+ std::swap (Result, InOrderExternalEvent);
725+ });
724726 return Result;
725727 }
726728
@@ -836,11 +838,12 @@ class queue_impl {
836838 // dependency so in the case where some commands were not enqueued
837839 // (blocked), we track them to prevent barrier from being enqueued
838840 // earlier.
839- MMissedCleanupRequests.get ([this ](MissedCleanupRequestsType &MissedCleanupRequests){
840- for (auto &UpdatedGraph : MissedCleanupRequests)
841- doUnenqueuedCommandCleanup (UpdatedGraph);
842- MissedCleanupRequests.clear ();
843- });
841+ MMissedCleanupRequests.get (
842+ [this ](MissedCleanupRequestsType &MissedCleanupRequests){
843+ for (auto &UpdatedGraph : MissedCleanupRequests)
844+ doUnenqueuedCommandCleanup (UpdatedGraph);
845+ MissedCleanupRequests.clear ();
846+ });
844847 auto &Deps = MGraph.expired () ? MDefaultGraphDeps : MExtGraphDeps;
845848 if (Type == CGType::Barrier && !Deps.UnenqueuedCmdEvents .empty ()) {
846849 Handler.depends_on (Deps.UnenqueuedCmdEvents );
@@ -1025,20 +1028,18 @@ class queue_impl {
10251028 } MDefaultGraphDeps, MExtGraphDeps;
10261029
10271030 // implement check-lock-check pattern to not lock empty MData
1028- template <typename DataType>
1029- class CheckLockCheck {
1031+ template <typename DataType> class CheckLockCheck {
10301032 DataType MData;
10311033 std::atomic_bool MDataPresent = false ;
10321034 mutable std::mutex MDataMtx;
1035+
10331036 public:
1034- template <typename F>
1035- void put (F &&func) {
1037+ template <typename F> void put (F &&func) {
10361038 std::lock_guard<std::mutex> Lock (MDataMtx);
10371039 MDataPresent.store (true , std::memory_order_release);
10381040 func (MData);
10391041 }
1040- template <typename F>
1041- void get (F &&func) {
1042+ template <typename F> void get (F &&func) {
10421043 if (MDataPresent.load (std::memory_order_acquire)) {
10431044 std::lock_guard<std::mutex> Lock (MDataMtx);
10441045 if (MDataPresent.load (std::memory_order_acquire)) {
@@ -1047,8 +1048,7 @@ class queue_impl {
10471048 }
10481049 }
10491050 }
1050- template <typename F>
1051- DataType read (F &&func) {
1051+ template <typename F> DataType read (F &&func) {
10521052 if (!MDataPresent.load (std::memory_order_acquire))
10531053 return DataType{};
10541054 std::lock_guard<std::mutex> Lock (MDataMtx);
@@ -1101,8 +1101,8 @@ class queue_impl {
11011101 unsigned long long MQueueID;
11021102 static std::atomic<unsigned long long > MNextAvailableQueueID;
11031103
1104- using MissedCleanupRequestsType =
1105- std::deque< std::shared_ptr<ext::oneapi::experimental::detail::graph_impl>>;
1104+ using MissedCleanupRequestsType = std::deque<
1105+ std::shared_ptr<ext::oneapi::experimental::detail::graph_impl>>;
11061106 CheckLockCheck<MissedCleanupRequestsType> MMissedCleanupRequests;
11071107
11081108 friend class sycl ::ext::oneapi::experimental::detail::node_impl;
0 commit comments