File tree 1 file changed +5
-4
lines changed
1 file changed +5
-4
lines changed Original file line number Diff line number Diff line change @@ -2295,14 +2295,15 @@ typedef struct _jl_task_t {
2295
2295
uint16_t priority ;
2296
2296
// flag indicating whether or not to record timing metrics for this task
2297
2297
uint8_t metrics_enabled ;
2298
+ // (alignas(8) is needed in the following fields to work around a GCC bug. See #56626.)
2298
2299
// timestamp this task first entered the run queue
2299
- _Atomic (uint64_t ) first_enqueued_at ;
2300
+ alignas( 8 ) _Atomic (uint64_t ) first_enqueued_at ;
2300
2301
// timestamp this task was most recently scheduled to run
2301
- _Atomic (uint64_t ) last_started_running_at ;
2302
+ alignas( 8 ) _Atomic (uint64_t ) last_started_running_at ;
2302
2303
// time this task has spent running; updated when it yields or finishes.
2303
- _Atomic (uint64_t ) cpu_time_ns ;
2304
+ alignas( 8 ) _Atomic (uint64_t ) cpu_time_ns ;
2304
2305
// timestamp this task finished (i.e. entered state DONE or FAILED).
2305
- _Atomic (uint64_t ) finished_at ;
2306
+ alignas( 8 ) _Atomic (uint64_t ) finished_at ;
2306
2307
2307
2308
// hidden state:
2308
2309
// cached floating point environment
You can’t perform that action at this time.
0 commit comments