diff --git a/src/plugins/e-acsl/share/e-acsl/observation_model/segment_model/e_acsl_shadow_concurrency.c b/src/plugins/e-acsl/share/e-acsl/observation_model/segment_model/e_acsl_shadow_concurrency.c
index 2292d2f6f176fdab394d250422a6a426d77ad453..3d92f1977f81bc31634a6c04888742941d62047f 100644
--- a/src/plugins/e-acsl/share/e-acsl/observation_model/segment_model/e_acsl_shadow_concurrency.c
+++ b/src/plugins/e-acsl/share/e-acsl/observation_model/segment_model/e_acsl_shadow_concurrency.c
@@ -183,6 +183,9 @@ static void fill_thread_layout_stack(memory_partition *pstack,
 static void fill_thread_layout_tls(memory_partition *ptls) {
   // Since the TLS is by design specific to each thread, we can reuse the
   // method used to identify the TLS segment in the main thread
+  // We first need to collect the safe locations of the current thread,
+  // since we need to register them in case the program uses one of them
+  // inside the thread
   collect_safe_locations();
   set_application_segment(&ptls->application, get_tls_start(0), get_tls_size(),
                           "thread_tls", NULL);
diff --git a/src/plugins/e-acsl/share/e-acsl/observation_model/segment_model/e_acsl_shadow_layout.c b/src/plugins/e-acsl/share/e-acsl/observation_model/segment_model/e_acsl_shadow_layout.c
index 3578bc01584ab3875ddbe8c0638f857806eee7b2..15870873f1afe6e642d76b62ec3760a7d881f700 100644
--- a/src/plugins/e-acsl/share/e-acsl/observation_model/segment_model/e_acsl_shadow_layout.c
+++ b/src/plugins/e-acsl/share/e-acsl/observation_model/segment_model/e_acsl_shadow_layout.c
@@ -362,6 +362,7 @@ static void init_shadow_layout_global() {
 
 static void init_shadow_layout_tls() {
   memory_partition *ptls = &mem_layout.tls;
+  /* Collect the safe locations of the main thread */
   collect_safe_locations();
   init_tls_size();
   set_application_segment(&ptls->application, get_tls_start(1), get_tls_size(),