Skip to content

Commit 4b90cdb

Browse files
committed
Revert "cleanup"
This reverts commit 128e2b2.
1 parent 128e2b2 commit 4b90cdb

File tree

6 files changed

+15
-15
lines changed

6 files changed

+15
-15
lines changed

include/swift/ABI/TaskStatus.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ class TaskStatusRecord {
4545
TaskStatusRecord(TaskStatusRecordKind kind,
4646
TaskStatusRecord *parent = nullptr)
4747
: Flags(kind) {
48+
getKind();
4849
resetParent(parent);
4950
}
5051

@@ -174,10 +175,10 @@ class ChildTaskStatusRecord : public TaskStatusRecord {
174175
/// Group child tasks DO NOT have their own `ChildTaskStatusRecord` entries,
175176
/// and are only tracked by their respective `TaskGroupTaskStatusRecord`.
176177
class TaskGroupTaskStatusRecord : public TaskStatusRecord {
178+
public:
177179
AsyncTask *FirstChild;
178180
AsyncTask *LastChild;
179181

180-
public:
181182
TaskGroupTaskStatusRecord()
182183
: TaskStatusRecord(TaskStatusRecordKind::TaskGroup),
183184
FirstChild(nullptr),

stdlib/public/BackDeployConcurrency/CompatibilityOverrideConcurrency.def

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -241,6 +241,10 @@ OVERRIDE_TASK_GROUP(taskGroup_initialize, void,
241241
SWIFT_EXPORT_FROM(swift_Concurrency), SWIFT_CC(swift),
242242
swift::, (TaskGroup *group, const Metadata *T), (group, T))
243243

244+
OVERRIDE_TASK_GROUP(taskGroup_initializeWithFlags, void,
245+
SWIFT_EXPORT_FROM(swift_Concurrency), SWIFT_CC(swift),
246+
swift::, (size_t flags, TaskGroup *group, const Metadata *T), (flags, group, T))
247+
244248
OVERRIDE_TASK_STATUS(taskGroup_attachChild, void,
245249
SWIFT_EXPORT_FROM(swift_Concurrency), SWIFT_CC(swift),
246250
swift::, (TaskGroup *group, AsyncTask *child),

stdlib/public/BackDeployConcurrency/TaskGroup.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -451,8 +451,8 @@ static TaskGroup *asAbstract(TaskGroupImpl *group) {
451451
return reinterpret_cast<TaskGroup*>(group);
452452
}
453453

454-
TaskGroupTaskStatusRecord * TaskGroup::getTaskRecord() {
455-
return asImpl(this)->getTaskRecord();
454+
TaskGroupTaskStatusRecord *TaskGroup::getTaskRecord() {
455+
return asImpl(this)->getTaskRecord();
456456
}
457457

458458
// =============================================================================
@@ -561,7 +561,6 @@ void TaskGroupImpl::offer(AsyncTask *completedTask, AsyncContext *context) {
561561
assert(completedTask->hasChildFragment());
562562
assert(completedTask->hasGroupChildFragment());
563563
assert(completedTask->groupChildFragment()->getGroup() == asAbstract(this));
564-
SWIFT_TASK_DEBUG_LOG("offer task %p to group %p", completedTask, this);
565564

566565
mutex.lock(); // TODO: remove fragment lock, and use status for synchronization
567566

@@ -715,12 +714,12 @@ static void swift_taskGroup_wait_next_throwingImpl(
715714
SWIFT_TASK_DEBUG_LOG("poll group = %p, task = %p, ready task available = %p",
716715
group, waitingTask, polled.retainedTask);
717716
fillGroupNextResult(context, polled);
717+
718718
if (auto completedTask = polled.retainedTask) {
719719
// it would be null for PollStatus::Empty, then we don't need to release
720720
group->detachChild(polled.retainedTask);
721721
swift_release(polled.retainedTask);
722722
}
723-
724723
return waitingTask->runInFullyEstablishedContext();
725724
}
726725
}
@@ -841,6 +840,7 @@ PollResult TaskGroupImpl::poll(AsyncTask *waitingTask) {
841840

842841
// =============================================================================
843842
// ==== isEmpty ----------------------------------------------------------------
843+
844844
SWIFT_CC(swift)
845845
static bool swift_taskGroup_isEmptyImpl(TaskGroup *group) {
846846
return asImpl(group)->isEmpty();

stdlib/public/BackDeployConcurrency/TaskGroup.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -464,6 +464,7 @@ public struct ThrowingTaskGroup<ChildTaskResult: Sendable, Failure: Error> {
464464
}
465465
}
466466

467+
// TODO(ktoso): doesn't seem to be used?
467468
@usableFromInline
468469
internal mutating func _waitForAll() async throws {
469470
while let _ = try await next() { }

stdlib/public/BackDeployConcurrency/TaskStatus.h

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -170,8 +170,7 @@ class TaskGroupTaskStatusRecord : public TaskStatusRecord {
170170
TaskGroupTaskStatusRecord()
171171
: TaskStatusRecord(TaskStatusRecordKind::TaskGroup),
172172
FirstChild(nullptr),
173-
LastChild(nullptr) {
174-
}
173+
LastChild(nullptr) {}
175174

176175
TaskGroupTaskStatusRecord(AsyncTask *child)
177176
: TaskStatusRecord(TaskStatusRecordKind::TaskGroup),
@@ -180,7 +179,9 @@ class TaskGroupTaskStatusRecord : public TaskStatusRecord {
180179
assert(!LastChild || !LastChild->childFragment()->getNextChild());
181180
}
182181

183-
TaskGroup *getGroup() { return reinterpret_cast<TaskGroup *>(this); }
182+
TaskGroup *getGroup() {
183+
return reinterpret_cast<TaskGroup *>(this);
184+
}
184185

185186
/// Return the first child linked by this record. This may be null;
186187
/// if not, it (and all of its successors) are guaranteed to satisfy

stdlib/public/Concurrency/TaskGroup.cpp

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -585,10 +585,6 @@ class AccumulatingTaskGroup: public TaskGroupBase {
585585
: TaskGroupBase(T, TaskGroupStatus::initial().status),
586586
readyQueue() {}
587587

588-
AccumulatingTaskGroup(const AccumulatingTaskGroup &) = delete;
589-
590-
virtual ~AccumulatingTaskGroup() {}
591-
592588
virtual void destroy() override;
593589

594590
virtual bool isDiscardingResults() const override {
@@ -703,9 +699,6 @@ class DiscardingTaskGroup: public TaskGroupBase {
703699
: TaskGroupBase(T, TaskGroupStatus::initial().status),
704700
readyQueue() {}
705701

706-
DiscardingTaskGroup(const DiscardingTaskGroup &) = delete;
707-
virtual ~DiscardingTaskGroup() {}
708-
709702
virtual void destroy() override;
710703

711704
virtual bool isDiscardingResults() const override {

0 commit comments

Comments
 (0)