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