File tree Expand file tree Collapse file tree 2 files changed +8
-3
lines changed
stdlib/public/Concurrency Expand file tree Collapse file tree 2 files changed +8
-3
lines changed Original file line number Diff line number Diff line change @@ -316,9 +316,10 @@ class AsyncTask : public Job {
316316#endif
317317
318318 // Private storage is currently 6 pointers, 16 bytes of non-pointer data,
319- // the ActiveTaskStatus, and a RecursiveMutex.
319+ // 8 bytes of padding, the ActiveTaskStatus, and a RecursiveMutex.
320320 static constexpr size_t PrivateStorageSize =
321- 6 * sizeof (void *) + 16 + ActiveTaskStatusSize + sizeof (RecursiveMutex);
321+ 6 * sizeof (void *) + 16 + 8 + ActiveTaskStatusSize
322+ + sizeof (RecursiveMutex);
322323
323324 char Storage[PrivateStorageSize];
324325
Original file line number Diff line number Diff line change @@ -766,16 +766,20 @@ struct AsyncTask::PrivateStorage {
766766 alignas (ActiveTaskStatus) char StatusStorage[sizeof (ActiveTaskStatus)];
767767
768768 // / The allocator for the task stack.
769- // / Currently 2 words + 8 bytes.
769+ // / Currently 2 words + 4 bytes.
770770 TaskAllocator Allocator;
771771
772+ // Four bytes of padding here (on 64-bit)
773+
772774 // / Storage for task-local values.
773775 // / Currently one word.
774776 TaskLocal::Storage Local;
775777
776778 // / The top 32 bits of the task ID. The bottom 32 bits are in Job::Id.
777779 uint32_t Id;
778780
781+ // Another four bytes of padding here too (on 64-bit)
782+
779783 // / Base priority of Task - set only at creation time of task.
780784 // / Current max priority of task is ActiveTaskStatus.
781785 // /
You can’t perform that action at this time.
0 commit comments