From 36fd176f06a7dede49a90dbf6ef2c69fe818bdbe Mon Sep 17 00:00:00 2001 From: 7FM <41307817+7FM@users.noreply.github.com> Date: Thu, 24 Jul 2025 18:00:15 +0200 Subject: [PATCH] Avoid optimizing workload away --- tests/mq/mq_workload.c | 2 +- tests/mutex/mutex_workload.c | 2 +- tests/semaphore/sem_processing.c | 2 +- tests/semaphore/sem_workload.c | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/tests/mq/mq_workload.c b/tests/mq/mq_workload.c index c6fca7c..641336f 100644 --- a/tests/mq/mq_workload.c +++ b/tests/mq/mq_workload.c @@ -114,7 +114,7 @@ no_task_retval_t receiver(no_task_argument_t args) no_task_retval_t workload_task(no_task_argument_t args) { int32_t i; - unsigned long _workload_results[100]; + volatile unsigned long _workload_results[100]; while (1) { diff --git a/tests/mutex/mutex_workload.c b/tests/mutex/mutex_workload.c index 483ff51..144c016 100644 --- a/tests/mutex/mutex_workload.c +++ b/tests/mutex/mutex_workload.c @@ -120,7 +120,7 @@ no_task_retval_t workload_task(no_task_argument_t args) { int32_t i; int32_t j; - unsigned long _workload_results[100]; + volatile unsigned long _workload_results[100]; while (1) { diff --git a/tests/semaphore/sem_processing.c b/tests/semaphore/sem_processing.c index 94faa46..87e974e 100644 --- a/tests/semaphore/sem_processing.c +++ b/tests/semaphore/sem_processing.c @@ -44,7 +44,7 @@ no_task_retval_t task(no_task_argument_t args) DECLARE_TIME_COUNTERS(no_time_t, inc); DECLARE_TIME_COUNTERS(no_time_t, dec); DECLARE_TIME_STATS(int64_t); - unsigned long _workload_results[NB_ITER]; + volatile unsigned long _workload_results[NB_ITER]; /* 1b - Measure semaphore signaling time */ for (i = 0; i < NB_ITER; i++) diff --git a/tests/semaphore/sem_workload.c b/tests/semaphore/sem_workload.c index 071595f..9cc4117 100644 --- a/tests/semaphore/sem_workload.c +++ b/tests/semaphore/sem_workload.c @@ -112,7 +112,7 @@ no_task_retval_t receiver(no_task_argument_t args) no_task_retval_t workload_task(no_task_argument_t args) { int32_t i; - unsigned long _workload_results[100]; + volatile unsigned long _workload_results[100]; while (1) {