From 8f00f3494a113f5fd2471a3f6329bc4d71ed3fba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Kochma=C5=84ski?= Date: Fri, 2 May 2025 15:27:38 +0200 Subject: [PATCH] stacks: rename thread_local_bindings{,_size} to tl_bindings{,_size} This is strictly cosmetic change. --- src/c/main.d | 7 +++++-- src/c/stacks.d | 24 ++++++++++++------------ src/c/threads/thread.d | 16 ++++++++-------- src/h/external.h | 4 ++-- src/h/stacks.h | 18 +++++++++--------- 5 files changed, 36 insertions(+), 33 deletions(-) diff --git a/src/c/main.d b/src/c/main.d index 259a06c36..13cfaf603 100644 --- a/src/c/main.d +++ b/src/c/main.d @@ -199,8 +199,8 @@ ecl_init_first_env(cl_env_ptr env) env->bds_stack.bindings_array = si_make_vector(ECL_T, ecl_make_fixnum(1024), ECL_NIL, ECL_NIL, ECL_NIL, ECL_NIL); si_fill_array_with_elt(env->bds_stack.bindings_array, ECL_NO_TL_BINDING, ecl_make_fixnum(0), ECL_NIL); - env->bds_stack.thread_local_bindings_size = env->bds_stack.bindings_array->vector.dim; - env->bds_stack.thread_local_bindings = env->bds_stack.bindings_array->vector.self.t; + env->bds_stack.tl_bindings_size = env->bds_stack.bindings_array->vector.dim; + env->bds_stack.tl_bindings = env->bds_stack.bindings_array->vector.self.t; #endif init_env_mp(env); init_env_int(env); @@ -281,6 +281,9 @@ _ecl_alloc_env(cl_env_ptr parent) output->default_sigmask = cl_core.default_sigmask; } } + for (cl_index i = 0; i < ECL_BIGNUM_REGISTER_NUMBER; i++) { + output->big_register[i] = ECL_NIL; + } output->method_cache = output->slot_cache = NULL; output->interrupt_struct = NULL; /* diff --git a/src/c/stacks.d b/src/c/stacks.d index 37a064b04..64a49099b 100644 --- a/src/c/stacks.d +++ b/src/c/stacks.d @@ -459,11 +459,11 @@ invalid_or_too_large_binding_index(cl_env_ptr env, cl_object s) if (index == ECL_MISSING_SPECIAL_BINDING) { index = ecl_new_binding_index(env, s); } - if (index >= env->bds_stack.thread_local_bindings_size) { + if (index >= env->bds_stack.tl_bindings_size) { cl_object vector = env->bds_stack.bindings_array; env->bds_stack.bindings_array = vector = ecl_extend_bindings_array(vector); - env->bds_stack.thread_local_bindings_size = vector->vector.dim; - env->bds_stack.thread_local_bindings = vector->vector.self.t; + env->bds_stack.tl_bindings_size = vector->vector.dim; + env->bds_stack.tl_bindings = vector->vector.self.t; } return index; } @@ -479,10 +479,10 @@ ecl_bds_bind(cl_env_ptr env, cl_object s, cl_object v) cl_object *location; ecl_bds_ptr slot; cl_index index = s->symbol.binding; - if (index >= env->bds_stack.thread_local_bindings_size) { + if (index >= env->bds_stack.tl_bindings_size) { index = invalid_or_too_large_binding_index(env,s); } - location = env->bds_stack.thread_local_bindings + index; + location = env->bds_stack.tl_bindings + index; slot = env->bds_stack.top+1; if (slot >= env->bds_stack.limit) slot = ecl_bds_overflow(); slot->symbol = ECL_DUMMY_TAG; @@ -511,10 +511,10 @@ ecl_bds_push(cl_env_ptr env, cl_object s) cl_object *location; ecl_bds_ptr slot; cl_index index = s->symbol.binding; - if (index >= env->bds_stack.thread_local_bindings_size) { + if (index >= env->bds_stack.tl_bindings_size) { index = invalid_or_too_large_binding_index(env,s); } - location = env->bds_stack.thread_local_bindings + index; + location = env->bds_stack.tl_bindings + index; slot = env->bds_stack.top+1; if (slot >= env->bds_stack.limit) slot = ecl_bds_overflow(); slot->symbol = ECL_DUMMY_TAG; @@ -540,7 +540,7 @@ ecl_bds_unwind1(cl_env_ptr env) { cl_object s = env->bds_stack.top->symbol; #ifdef ECL_THREADS - cl_object *location = env->bds_stack.thread_local_bindings + s->symbol.binding; + cl_object *location = env->bds_stack.tl_bindings + s->symbol.binding; *location = env->bds_stack.top->value; #else s->symbol.value = env->bds_stack.top->value; @@ -553,8 +553,8 @@ cl_object ecl_bds_read(cl_env_ptr env, cl_object s) { cl_index index = s->symbol.binding; - if (index < env->bds_stack.thread_local_bindings_size) { - cl_object x = env->bds_stack.thread_local_bindings[index]; + if (index < env->bds_stack.tl_bindings_size) { + cl_object x = env->bds_stack.tl_bindings[index]; if (x != ECL_NO_TL_BINDING) return x; } return s->symbol.value; @@ -564,8 +564,8 @@ cl_object * ecl_bds_ref(cl_env_ptr env, cl_object s) { cl_index index = s->symbol.binding; - if (index < env->bds_stack.thread_local_bindings_size) { - cl_object *location = env->bds_stack.thread_local_bindings + index; + if (index < env->bds_stack.tl_bindings_size) { + cl_object *location = env->bds_stack.tl_bindings + index; if (*location != ECL_NO_TL_BINDING) return location; } diff --git a/src/c/threads/thread.d b/src/c/threads/thread.d index 032d6d634..eb58ba09d 100644 --- a/src/c/threads/thread.d +++ b/src/c/threads/thread.d @@ -274,7 +274,7 @@ thread_entry_point(void *arg) } static cl_object -alloc_process(cl_object name, cl_object initial_bindings) +alloc_process(cl_object name, cl_object initial_bindings_p) { cl_env_ptr env = ecl_process_env(); cl_object process = ecl_alloc_object(t_process), array; @@ -285,7 +285,7 @@ alloc_process(cl_object name, cl_object initial_bindings) process->process.interrupt = ECL_NIL; process->process.exit_values = ECL_NIL; process->process.env = NULL; - if (initial_bindings != ECL_NIL || env->bds_stack.bindings_array == OBJNULL) { + if (initial_bindings_p != ECL_NIL || env->bds_stack.bindings_array == OBJNULL) { array = si_make_vector(ECL_T, ecl_make_fixnum(256), ECL_NIL, ECL_NIL, ECL_NIL, ECL_NIL); si_fill_array_with_elt(array, ECL_NO_TL_BINDING, ecl_make_fixnum(0), ECL_NIL); @@ -359,8 +359,8 @@ ecl_import_current_thread(cl_object name, cl_object bindings) /* Copy initial bindings from process to the fake environment */ env_aux->cleanup = registered; env_aux->bds_stack.bindings_array = process->process.initial_bindings; - env_aux->bds_stack.thread_local_bindings_size = env_aux->bds_stack.bindings_array->vector.dim; - env_aux->bds_stack.thread_local_bindings = env_aux->bds_stack.bindings_array->vector.self.t; + env_aux->bds_stack.tl_bindings_size = env_aux->bds_stack.bindings_array->vector.dim; + env_aux->bds_stack.tl_bindings = env_aux->bds_stack.bindings_array->vector.self.t; /* Switch over to the real environment */ memcpy(env, env_aux, sizeof(*env)); @@ -390,10 +390,10 @@ ecl_release_current_thread(void) #endif } -@(defun mp::make-process (&key name ((:initial-bindings initial_bindings) ECL_T)) +@(defun mp::make-process (&key name ((:initial-bindings initial_bindings_p) ECL_T)) cl_object process; @ - process = alloc_process(name, initial_bindings); + process = alloc_process(name, initial_bindings_p); @(return process); @) @@ -516,9 +516,9 @@ mp_process_enable(cl_object process) process_env->trap_fpe_bits = process->process.trap_fpe_bits; process_env->bds_stack.bindings_array = process->process.initial_bindings; - process_env->bds_stack.thread_local_bindings_size = + process_env->bds_stack.tl_bindings_size = process_env->bds_stack.bindings_array->vector.dim; - process_env->bds_stack.thread_local_bindings = + process_env->bds_stack.tl_bindings = process_env->bds_stack.bindings_array->vector.self.t; ecl_disable_interrupts_env(the_env); diff --git a/src/h/external.h b/src/h/external.h index 58013165b..5f2e02d4a 100755 --- a/src/h/external.h +++ b/src/h/external.h @@ -13,8 +13,8 @@ extern "C" { /* The BinDing Stack stores the bindings of special variables. */ struct ecl_binding_stack { #ifdef ECL_THREADS - cl_index thread_local_bindings_size; - cl_object *thread_local_bindings; + cl_index tl_bindings_size; + cl_object *tl_bindings; cl_object bindings_array; #endif cl_index size; diff --git a/src/h/stacks.h b/src/h/stacks.h index e7087a376..535fade06 100755 --- a/src/h/stacks.h +++ b/src/h/stacks.h @@ -107,10 +107,10 @@ static inline void ecl_bds_bind_inl(cl_env_ptr env, cl_object s, cl_object v) # ifdef ECL_THREADS cl_object *location; const cl_index index = s->symbol.binding; - if (index >= env->bds_stack.thread_local_bindings_size) { + if (index >= env->bds_stack.tl_bindings_size) { ecl_bds_bind(env,s,v); } else { - location = env->bds_stack.thread_local_bindings + index; + location = env->bds_stack.tl_bindings + index; slot = env->bds_stack.top+1; if (slot >= env->bds_stack.limit) slot = ecl_bds_overflow(); /* First, we push a dummy symbol in the stack to @@ -145,10 +145,10 @@ static inline void ecl_bds_push_inl(cl_env_ptr env, cl_object s) # ifdef ECL_THREADS cl_object *location; const cl_index index = s->symbol.binding; - if (index >= env->bds_stack.thread_local_bindings_size) { + if (index >= env->bds_stack.tl_bindings_size) { ecl_bds_push(env, s); } else { - location = env->bds_stack.thread_local_bindings + index; + location = env->bds_stack.tl_bindings + index; slot = env->bds_stack.top+1; if (slot >= env->bds_stack.limit) slot = ecl_bds_overflow(); slot->symbol = ECL_DUMMY_TAG; @@ -174,7 +174,7 @@ static inline void ecl_bds_unwind1_inl(cl_env_ptr env) { cl_object s = env->bds_stack.top->symbol; # ifdef ECL_THREADS - cl_object *location = env->bds_stack.thread_local_bindings + s->symbol.binding; + cl_object *location = env->bds_stack.tl_bindings + s->symbol.binding; *location = env->bds_stack.top->value; # else s->symbol.value = env->bds_stack.top->value; @@ -186,8 +186,8 @@ static inline void ecl_bds_unwind1_inl(cl_env_ptr env) static inline cl_object ecl_bds_read_inl(cl_env_ptr env, cl_object s) { cl_index index = s->symbol.binding; - if (index < env->bds_stack.thread_local_bindings_size) { - cl_object x = env->bds_stack.thread_local_bindings[index]; + if (index < env->bds_stack.tl_bindings_size) { + cl_object x = env->bds_stack.tl_bindings[index]; if (x != ECL_NO_TL_BINDING) return x; } return s->symbol.value; @@ -195,8 +195,8 @@ static inline cl_object ecl_bds_read_inl(cl_env_ptr env, cl_object s) static inline cl_object *ecl_bds_ref_inl(cl_env_ptr env, cl_object s) { cl_index index = s->symbol.binding; - if (index < env->bds_stack.thread_local_bindings_size) { - cl_object *location = env->bds_stack.thread_local_bindings + index; + if (index < env->bds_stack.tl_bindings_size) { + cl_object *location = env->bds_stack.tl_bindings + index; if (*location != ECL_NO_TL_BINDING) return location; } return &s->symbol.value;