Remove LOCAL_ variables declaration from heapgc.c.
This commit is contained in:
parent
65a514349f
commit
bada4ddfcf
41
C/heapgc.c
41
C/heapgc.c
@ -97,47 +97,6 @@ typedef struct RB_red_blk_node {
|
||||
#define LOCAL_cont_top0 (cont *)LOCAL_sTR
|
||||
#endif
|
||||
|
||||
#if !defined(YAPOR) && !defined(THREADS)
|
||||
/* in a single gc */
|
||||
static unsigned long int LOCAL_total_marked, LOCAL_total_oldies; /* number of heap objects marked */
|
||||
|
||||
#ifdef EASY_SHUNTING
|
||||
static choiceptr LOCAL_current_B;
|
||||
|
||||
static tr_fr_ptr LOCAL_sTR, LOCAL_sTR0;
|
||||
|
||||
static CELL *LOCAL_prev_HB;
|
||||
#endif
|
||||
|
||||
static tr_fr_ptr LOCAL_new_TR;
|
||||
|
||||
static CELL *LOCAL_HGEN;
|
||||
|
||||
char *LOCAL_bp;
|
||||
|
||||
static int LOCAL_discard_trail_entries = 0;
|
||||
|
||||
#ifdef HYBRID_SCHEME
|
||||
static CELL_PTR *LOCAL_iptop;
|
||||
#endif
|
||||
|
||||
#ifndef EASY_SHUNTING
|
||||
static cont *LOCAL_cont_top0;
|
||||
#endif
|
||||
static cont *LOCAL_cont_top;
|
||||
|
||||
static gc_ma_hash_entry LOCAL_gc_ma_hash_table[GC_MAVARS_HASH_SIZE];
|
||||
|
||||
static gc_ma_hash_entry *LOCAL_gc_ma_h_top, *LOCAL_gc_ma_h_list;
|
||||
|
||||
static UInt LOCAL_gc_timestamp; /* an unsigned int */
|
||||
|
||||
static ADDR LOCAL_db_vec, LOCAL_db_vec0;
|
||||
|
||||
static rb_red_blk_node *LOCAL_db_root, *LOCAL_db_nil;
|
||||
|
||||
#endif /* !defined(YAPOR) && !defined(THREADS) */
|
||||
|
||||
/* support for hybrid garbage collection scheme */
|
||||
|
||||
static void
|
||||
|
17
H/dlocals.h
17
H/dlocals.h
@ -80,23 +80,21 @@
|
||||
#define LOCAL_total_choicepoints WL->total_cps
|
||||
#endif
|
||||
#define LOCAL_consult_level WL->consult_level_
|
||||
|
||||
#if defined(YAPOR) || defined(THREADS)
|
||||
#define LOCAL_SignalLock WL->signal_lock
|
||||
#endif
|
||||
|
||||
#define LOCAL_total_marked WL->tot_marked
|
||||
#define LOCAL_total_oldies WL->tot_oldies
|
||||
#if DEBUG && COROUTINING
|
||||
#define LOCAL_total_smarked WL->tot_smarked
|
||||
#endif
|
||||
#define LOCAL_current_B WL->wl_current_B
|
||||
#define LOCAL_prev_HB WL->wl_prev_HB
|
||||
#define LOCAL_HGEN WL->hgen
|
||||
#define LOCAL_iptop WL->ip_top
|
||||
#if GC_NO_TAGS
|
||||
|
||||
#if defined(GC_NO_TAGS)
|
||||
#define LOCAL_bp WL->b_p
|
||||
#endif
|
||||
#if defined(TABLING) || defined(YAPOR_SBA)
|
||||
#if !defined(TABLING) && !defined(YAPOR_SBA) && (defined(YAPOR) || defined(THREADS))
|
||||
#define LOCAL_sTR WL->wl_sTR
|
||||
#define LOCAL_sTR0 WL->wl_sTR0
|
||||
#define LOCAL_new_TR WL->new_tr
|
||||
@ -104,7 +102,7 @@
|
||||
#define LOCAL_sTR WL->wl_sTR
|
||||
#define LOCAL_sTR0 WL->wl_sTR0
|
||||
#define LOCAL_new_TR WL->new_tr
|
||||
#endif
|
||||
#endif /* !TABLING && !YAPOR_SBA && (YAPOR || THREADS) */
|
||||
#define LOCAL_cont_top0 WL->conttop0
|
||||
#define LOCAL_cont_top WL->conttop
|
||||
#define LOCAL_discard_trail_entries WL->disc_trail_entries
|
||||
@ -116,7 +114,6 @@
|
||||
#define LOCAL_db_vec0 WL->DB_vec0
|
||||
#define LOCAL_db_root WL->DB_root
|
||||
#define LOCAL_db_nil WL->DB_nil
|
||||
#endif /* defined(YAPOR) || defined(THREADS) */
|
||||
#define LOCAL_gc_restore WL->gc_restore
|
||||
#define LOCAL_DynamicArrays WL->dynamic_arrays
|
||||
#define LOCAL_StaticArrays WL->static_arrays
|
||||
@ -133,8 +130,8 @@
|
||||
#define LOCAL_execution WL->_execution
|
||||
#ifdef THREADS
|
||||
#define LOCAL_ThreadHandle WL->thread_handle
|
||||
#define FOREIGN_ThreadHandle(wid) (Yap_WLocal[(wid)]->thread_handle)
|
||||
#define MY_ThreadHandle (Yap_WLocal[worker_id]->thread_handle)
|
||||
#define FOREIGN_ThreadHandle(wid) (Yap_WLocal[(wid)]->thread_handle)
|
||||
#define MY_ThreadHandle (Yap_WLocal[worker_id]->thread_handle)
|
||||
#endif
|
||||
|
||||
|
||||
|
@ -77,10 +77,6 @@
|
||||
(CellPtr(B) < CellPtr(val) && CellPtr(val) <= \
|
||||
LCL0 && HEAP_PTR(val))))
|
||||
|
||||
#if !defined(YAPOR) && !defined(THREADS)
|
||||
extern char *LOCAL_bp;
|
||||
#endif
|
||||
|
||||
#define MARK_BIT ((char)1)
|
||||
#define RMARK_BIT ((char)2)
|
||||
|
||||
|
31
H/hlocals.h
31
H/hlocals.h
@ -57,7 +57,7 @@ typedef struct worker_local {
|
||||
int debug_on;
|
||||
char* scanner_stack;
|
||||
struct scanner_extra_alloc* scanner_extra_blocks;
|
||||
struct DB_TERM *ball_term;
|
||||
struct DB_TERM* ball_term;
|
||||
UInt active_signals;
|
||||
UInt i_pred_arity;
|
||||
yamop* prof_end;
|
||||
@ -82,31 +82,29 @@ typedef struct worker_local {
|
||||
Int total_cps;
|
||||
#endif
|
||||
int consult_level_;
|
||||
|
||||
#if defined(YAPOR) || defined(THREADS)
|
||||
lockvar signal_lock;
|
||||
#endif
|
||||
|
||||
Int tot_marked;
|
||||
Int tot_oldies;
|
||||
#if DEBUG && COROUTINING
|
||||
UInt tot_smarked;
|
||||
#endif
|
||||
struct choicept *wl_current_B;
|
||||
struct choicept* wl_current_B;
|
||||
CELL* wl_prev_HB;
|
||||
CELL* hgen;
|
||||
CELL** ip_top;
|
||||
#if GC_NO_TAGS
|
||||
|
||||
#if defined(GC_NO_TAGS)
|
||||
char* b_p;
|
||||
#endif
|
||||
#if defined(TABLING) || defined(YAPOR_SBA)
|
||||
#if !defined(TABLING) && !defined(YAPOR_SBA) && (defined(YAPOR) || defined(THREADS))
|
||||
Term* wl_sTR;
|
||||
Term* wl_sTR0;
|
||||
Term* new_tr;
|
||||
#else
|
||||
struct trail_frame* wl_sTR;
|
||||
struct trail_frame* wl_sTR0;
|
||||
struct trail_frame* new_tr;
|
||||
#else
|
||||
Term *wl_sTR;
|
||||
Term *wl_sTR0;
|
||||
Term *new_tr;
|
||||
#endif
|
||||
#endif /* !TABLING && !YAPOR_SBA && (YAPOR || THREADS) */
|
||||
struct gc_mark_continuation* conttop0;
|
||||
struct gc_mark_continuation* conttop;
|
||||
int disc_trail_entries;
|
||||
@ -118,7 +116,6 @@ typedef struct worker_local {
|
||||
ADDR DB_vec0;
|
||||
struct RB_red_blk_node* DB_root;
|
||||
struct RB_red_blk_node* DB_nil;
|
||||
#endif /* defined(YAPOR) || defined(THREADS) */
|
||||
sigjmp_buf gc_restore;
|
||||
struct array_entry* dynamic_arrays;
|
||||
struct static_array_entry* static_arrays;
|
||||
@ -131,12 +128,12 @@ typedef struct worker_local {
|
||||
Int* label_first_array;
|
||||
UInt label_first_array_sz;
|
||||
|
||||
struct PL_local_data *Yap_ld_;
|
||||
struct PL_local_data* Yap_ld_;
|
||||
struct open_query_struct* _execution;
|
||||
#ifdef THREADS
|
||||
struct thandle thread_handle;
|
||||
#define FOREIGN_ThreadHandle(wid) (Yap_WLocal[(wid)]->thread_handle)
|
||||
#define MY_ThreadHandle (Yap_WLocal[worker_id]->thread_handle)
|
||||
#define FOREIGN_ThreadHandle(wid) (Yap_WLocal[(wid)]->thread_handle)
|
||||
#define MY_ThreadHandle (Yap_WLocal[worker_id]->thread_handle)
|
||||
#endif
|
||||
|
||||
} w_local;
|
||||
|
17
H/ilocals.h
17
H/ilocals.h
@ -80,23 +80,21 @@ static void InitWorker(int wid) {
|
||||
FOREIGN(wid)->total_cps = 0;
|
||||
#endif
|
||||
FOREIGN(wid)->consult_level_ = 0;
|
||||
|
||||
#if defined(YAPOR) || defined(THREADS)
|
||||
INIT_LOCK(FOREIGN(wid)->signal_lock);
|
||||
#endif
|
||||
|
||||
FOREIGN(wid)->tot_marked = 0L;
|
||||
FOREIGN(wid)->tot_oldies = 0L;
|
||||
#if DEBUG && COROUTINING
|
||||
FOREIGN(wid)->tot_smarked = 0L;
|
||||
#endif
|
||||
FOREIGN(wid)->wl_current_B = NULL;
|
||||
FOREIGN(wid)->wl_prev_HB = NULL;
|
||||
FOREIGN(wid)->hgen = NULL;
|
||||
FOREIGN(wid)->ip_top = NULL;
|
||||
#if GC_NO_TAGS
|
||||
|
||||
#if defined(GC_NO_TAGS)
|
||||
FOREIGN(wid)->b_p = NULL;
|
||||
#endif
|
||||
#if defined(TABLING) || defined(YAPOR_SBA)
|
||||
#if !defined(TABLING) && !defined(YAPOR_SBA) && (defined(YAPOR) || defined(THREADS))
|
||||
FOREIGN(wid)->wl_sTR = NULL;
|
||||
FOREIGN(wid)->wl_sTR0 = NULL;
|
||||
FOREIGN(wid)->new_tr = NULL;
|
||||
@ -104,7 +102,7 @@ static void InitWorker(int wid) {
|
||||
FOREIGN(wid)->wl_sTR = NULL;
|
||||
FOREIGN(wid)->wl_sTR0 = NULL;
|
||||
FOREIGN(wid)->new_tr = NULL;
|
||||
#endif
|
||||
#endif /* !TABLING && !YAPOR_SBA && (YAPOR || THREADS) */
|
||||
FOREIGN(wid)->conttop0 = NULL;
|
||||
FOREIGN(wid)->conttop = NULL;
|
||||
FOREIGN(wid)->disc_trail_entries = 0;
|
||||
@ -116,7 +114,6 @@ static void InitWorker(int wid) {
|
||||
FOREIGN(wid)->DB_vec0 = NULL;
|
||||
FOREIGN(wid)->DB_root = NULL;
|
||||
FOREIGN(wid)->DB_nil = NULL;
|
||||
#endif /* defined(YAPOR) || defined(THREADS) */
|
||||
|
||||
FOREIGN(wid)->dynamic_arrays = NULL;
|
||||
FOREIGN(wid)->static_arrays = NULL;
|
||||
@ -133,8 +130,8 @@ static void InitWorker(int wid) {
|
||||
FOREIGN(wid)->_execution = NULL;
|
||||
#ifdef THREADS
|
||||
InitThreadHandle(wid);
|
||||
#define FOREIGN_ThreadHandle(wid) (Yap_WLocal[(wid)]->thread_handle)
|
||||
#define MY_ThreadHandle (Yap_WLocal[worker_id]->thread_handle)
|
||||
#define FOREIGN_ThreadHandle(wid) (Yap_WLocal[(wid)]->thread_handle)
|
||||
#define MY_ThreadHandle (Yap_WLocal[worker_id]->thread_handle)
|
||||
#endif
|
||||
|
||||
}
|
||||
|
21
H/rlocals.h
21
H/rlocals.h
@ -80,23 +80,21 @@ static void RestoreWorker(int wid USES_REGS) {
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
#if defined(YAPOR) || defined(THREADS)
|
||||
REINIT_LOCK(FOREIGN(wid)->signal_lock);
|
||||
|
||||
|
||||
|
||||
#if DEBUG && COROUTINING
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
#if GC_NO_TAGS
|
||||
|
||||
|
||||
|
||||
|
||||
#if defined(GC_NO_TAGS)
|
||||
|
||||
#endif
|
||||
#if defined(TABLING) || defined(YAPOR_SBA)
|
||||
#if !defined(TABLING) && !defined(YAPOR_SBA) && (defined(YAPOR) || defined(THREADS))
|
||||
|
||||
|
||||
|
||||
@ -104,7 +102,7 @@ static void RestoreWorker(int wid USES_REGS) {
|
||||
|
||||
|
||||
|
||||
#endif
|
||||
#endif /* !TABLING && !YAPOR_SBA && (YAPOR || THREADS) */
|
||||
|
||||
|
||||
|
||||
@ -116,7 +114,6 @@ static void RestoreWorker(int wid USES_REGS) {
|
||||
|
||||
|
||||
|
||||
#endif /* defined(YAPOR) || defined(THREADS) */
|
||||
|
||||
FOREIGN(wid)->dynamic_arrays = PtoArrayEAdjust(FOREIGN(wid)->dynamic_arrays);
|
||||
FOREIGN(wid)->static_arrays = PtoArraySAdjust(FOREIGN(wid)->static_arrays);
|
||||
@ -133,8 +130,8 @@ static void RestoreWorker(int wid USES_REGS) {
|
||||
|
||||
#ifdef THREADS
|
||||
|
||||
#define FOREIGN_ThreadHandle(wid) (Yap_WLocal[(wid)]->thread_handle)
|
||||
#define MY_ThreadHandle (Yap_WLocal[worker_id]->thread_handle)
|
||||
#define FOREIGN_ThreadHandle(wid) (Yap_WLocal[(wid)]->thread_handle)
|
||||
#define MY_ThreadHandle (Yap_WLocal[worker_id]->thread_handle)
|
||||
#endif
|
||||
|
||||
}
|
||||
|
224
misc/LOCALS
224
misc/LOCALS
@ -2,156 +2,152 @@
|
||||
START_WORKER_LOCAL
|
||||
|
||||
// Streams
|
||||
int c_input_stream LOCAL_c_input_stream =0
|
||||
int c_output_stream LOCAL_c_output_stream =1
|
||||
int c_error_stream LOCAL_c_error_stream =2
|
||||
int c_input_stream LOCAL_c_input_stream =0
|
||||
int c_output_stream LOCAL_c_output_stream =1
|
||||
int c_error_stream LOCAL_c_error_stream =2
|
||||
|
||||
/* shifts and restore: per local data-structure */
|
||||
restoreinfo rinfo
|
||||
. rinfo.old_ASP LOCAL_OldASP =NULL
|
||||
. rinfo.old_LCL0 LOCAL_OldLCL0 =NULL
|
||||
. rinfo.old_TR LOCAL_OldTR =NULL
|
||||
. rinfo.old_GlobalBase LOCAL_OldGlobalBase =NULL
|
||||
. rinfo.old_H LOCAL_OldH =NULL
|
||||
. rinfo.old_H0 LOCAL_OldH0 =NULL
|
||||
. rinfo.old_TrailBase LOCAL_OldTrailBase =NULL
|
||||
. rinfo.old_TrailTop LOCAL_OldTrailTop =NULL
|
||||
. rinfo.old_HeapBase LOCAL_OldHeapBase =NULL
|
||||
. rinfo.old_HeapTop LOCAL_OldHeapTop =NULL
|
||||
. rinfo.cl_diff LOCAL_ClDiff =0L
|
||||
. rinfo.g_diff LOCAL_GDiff =0L
|
||||
. rinfo.h_diff LOCAL_HDiff =0L
|
||||
. rinfo.g_diff0 LOCAL_GDiff0 =0L
|
||||
. rinfo.g_split LOCAL_GSplit =NULL
|
||||
. rinfo.l_diff LOCAL_LDiff =0L
|
||||
. rinfo.tr_diff LOCAL_TrDiff =0L
|
||||
. rinfo.x_diff LOCAL_XDiff =0L
|
||||
. rinfo.delay_diff LOCAL_DelayDiff =0L
|
||||
. rinfo.base_diff LOCAL_BaseDiff =0L
|
||||
restoreinfo rinfo
|
||||
. rinfo.old_ASP LOCAL_OldASP =NULL
|
||||
. rinfo.old_LCL0 LOCAL_OldLCL0 =NULL
|
||||
. rinfo.old_TR LOCAL_OldTR =NULL
|
||||
. rinfo.old_GlobalBase LOCAL_OldGlobalBase =NULL
|
||||
. rinfo.old_H LOCAL_OldH =NULL
|
||||
. rinfo.old_H0 LOCAL_OldH0 =NULL
|
||||
. rinfo.old_TrailBase LOCAL_OldTrailBase =NULL
|
||||
. rinfo.old_TrailTop LOCAL_OldTrailTop =NULL
|
||||
. rinfo.old_HeapBase LOCAL_OldHeapBase =NULL
|
||||
. rinfo.old_HeapTop LOCAL_OldHeapTop =NULL
|
||||
. rinfo.cl_diff LOCAL_ClDiff =0L
|
||||
. rinfo.g_diff LOCAL_GDiff =0L
|
||||
. rinfo.h_diff LOCAL_HDiff =0L
|
||||
. rinfo.g_diff0 LOCAL_GDiff0 =0L
|
||||
. rinfo.g_split LOCAL_GSplit =NULL
|
||||
. rinfo.l_diff LOCAL_LDiff =0L
|
||||
. rinfo.tr_diff LOCAL_TrDiff =0L
|
||||
. rinfo.x_diff LOCAL_XDiff =0L
|
||||
. rinfo.delay_diff LOCAL_DelayDiff =0L
|
||||
. rinfo.base_diff LOCAL_BaseDiff =0L
|
||||
|
||||
struct reduction_counters call_counters
|
||||
. call_counters.reductions LOCAL_ReductionsCounter =0L
|
||||
. call_counters.reductions_retries LOCAL_PredEntriesCounter =0L
|
||||
. call_counters.retries LOCAL_RetriesCounter =0L
|
||||
. call_counters.reductions_on LOCAL_ReductionsCounterOn =0L
|
||||
. call_counters.reductions_retries_on LOCAL_PredEntriesCounterOn =0L
|
||||
. call_counters.retries_on LOCAL_RetriesCounterOn =0L
|
||||
struct reduction_counters call_counters
|
||||
. call_counters.reductions LOCAL_ReductionsCounter =0L
|
||||
. call_counters.reductions_retries LOCAL_PredEntriesCounter =0L
|
||||
. call_counters.retries LOCAL_RetriesCounter =0L
|
||||
. call_counters.reductions_on LOCAL_ReductionsCounterOn =0L
|
||||
. call_counters.reductions_retries_on LOCAL_PredEntriesCounterOn =0L
|
||||
. call_counters.retries_on LOCAL_RetriesCounterOn =0L
|
||||
|
||||
int interrupts_disabled LOCAL_InterruptsDisabled =FALSE
|
||||
int interrupts_disabled LOCAL_InterruptsDisabled =FALSE
|
||||
|
||||
// support for consulting files
|
||||
/* current consult stack */
|
||||
union CONSULT_OBJ* consultsp LOCAL_ConsultSp =NULL
|
||||
union CONSULT_OBJ* consultsp LOCAL_ConsultSp =NULL
|
||||
/* current maximum number of cells in consult stack */
|
||||
UInt consultcapacity LOCAL_ConsultCapacity void
|
||||
UInt consultcapacity LOCAL_ConsultCapacity void
|
||||
/* top of consult stack */
|
||||
union CONSULT_OBJ* consultbase LOCAL_ConsultBase =NULL
|
||||
union CONSULT_OBJ* consultbase LOCAL_ConsultBase =NULL
|
||||
/* low-water mark for consult */
|
||||
union CONSULT_OBJ* consultlow LOCAL_ConsultLow =NULL
|
||||
union CONSULT_OBJ* consultlow LOCAL_ConsultLow =NULL
|
||||
|
||||
//global variables
|
||||
Term global_arena LOCAL_GlobalArena =0L TermToGlobalOrAtomAdjust
|
||||
UInt global_arena_overflows LOCAL_GlobalArenaOverflows =0L
|
||||
Int arena_overflows LOCAL_ArenaOverflows =0L
|
||||
Int depth_arenas LOCAL_DepthArenas =0
|
||||
Term global_arena LOCAL_GlobalArena =0L TermToGlobalOrAtomAdjust
|
||||
UInt global_arena_overflows LOCAL_GlobalArenaOverflows =0L
|
||||
Int arena_overflows LOCAL_ArenaOverflows =0L
|
||||
Int depth_arenas LOCAL_DepthArenas =0
|
||||
|
||||
int arith_error LOCAL_ArithError =FALSE
|
||||
struct pred_entry* last_asserted_pred LOCAL_LastAssertedPred =NULL
|
||||
int debug_on LOCAL_DebugOn =FALSE
|
||||
char* scanner_stack LOCAL_ScannerStack =NULL
|
||||
struct scanner_extra_alloc* scanner_extra_blocks LOCAL_ScannerExtraBlocks =NULL
|
||||
struct DB_TERM *ball_term LOCAL_BallTerm =NULL RestoreBallTerm(wid)
|
||||
UInt active_signals LOCAL_ActiveSignals =0L
|
||||
UInt i_pred_arity LOCAL_IPredArity =0L
|
||||
yamop* prof_end LOCAL_ProfEnd =NULL
|
||||
int uncaught_throw LOCAL_UncaughtThrow =FALSE
|
||||
int doing_undefp LOCAL_DoingUndefp =FALSE
|
||||
Int start_line LOCAL_StartLine =0L
|
||||
scratch_block scratchpad LOCAL_ScratchPad InitScratchPad(wid)
|
||||
int arith_error LOCAL_ArithError =FALSE
|
||||
struct pred_entry* last_asserted_pred LOCAL_LastAssertedPred =NULL
|
||||
int debug_on LOCAL_DebugOn =FALSE
|
||||
char* scanner_stack LOCAL_ScannerStack =NULL
|
||||
struct scanner_extra_alloc* scanner_extra_blocks LOCAL_ScannerExtraBlocks =NULL
|
||||
struct DB_TERM* ball_term LOCAL_BallTerm =NULL RestoreBallTerm(wid)
|
||||
UInt active_signals LOCAL_ActiveSignals =0L
|
||||
UInt i_pred_arity LOCAL_IPredArity =0L
|
||||
yamop* prof_end LOCAL_ProfEnd =NULL
|
||||
int uncaught_throw LOCAL_UncaughtThrow =FALSE
|
||||
int doing_undefp LOCAL_DoingUndefp =FALSE
|
||||
Int start_line LOCAL_StartLine =0L
|
||||
scratch_block scratchpad LOCAL_ScratchPad InitScratchPad(wid)
|
||||
#ifdef COROUTINING
|
||||
Term woken_goals LOCAL_WokenGoals =0L TermToGlobalAdjust
|
||||
Term atts_mutable_list LOCAL_AttsMutableList =0L TermToGlobalAdjust
|
||||
Term woken_goals LOCAL_WokenGoals =0L TermToGlobalAdjust
|
||||
Term atts_mutable_list LOCAL_AttsMutableList =0L TermToGlobalAdjust
|
||||
#endif
|
||||
|
||||
// gc_stuff
|
||||
Term gc_generation LOCAL_GcGeneration =0L TermToGlobalAdjust
|
||||
Term gc_phase LOCAL_GcPhase =0L TermToGlobalAdjust
|
||||
UInt gc_current_phase LOCAL_GcCurrentPhase =0L
|
||||
UInt gc_calls LOCAL_GcCalls =0L
|
||||
Int tot_gc_time LOCAL_TotGcTime =0L
|
||||
YAP_ULONG_LONG tot_gc_recovered LOCAL_TotGcRecovered =0L
|
||||
Int last_gc_time LOCAL_LastGcTime =0L
|
||||
Int last_ss_time LOCAL_LastSSTime =0L
|
||||
Term gc_generation LOCAL_GcGeneration =0L TermToGlobalAdjust
|
||||
Term gc_phase LOCAL_GcPhase =0L TermToGlobalAdjust
|
||||
UInt gc_current_phase LOCAL_GcCurrentPhase =0L
|
||||
UInt gc_calls LOCAL_GcCalls =0L
|
||||
Int tot_gc_time LOCAL_TotGcTime =0L
|
||||
YAP_ULONG_LONG tot_gc_recovered LOCAL_TotGcRecovered =0L
|
||||
Int last_gc_time LOCAL_LastGcTime =0L
|
||||
Int last_ss_time LOCAL_LastSSTime =0L
|
||||
|
||||
#if LOW_LEVEL_TRACER
|
||||
Int total_cps LOCAL_total_choicepoints =0
|
||||
Int total_cps LOCAL_total_choicepoints =0
|
||||
#endif
|
||||
|
||||
int consult_level_ LOCAL_consult_level =0
|
||||
int consult_level_ LOCAL_consult_level =0
|
||||
|
||||
// global variables that cannot be global in a thread/or-p implementation
|
||||
#if defined(YAPOR) || defined(THREADS)
|
||||
lockvar signal_lock LOCAL_SignalLock MkLock
|
||||
lockvar signal_lock LOCAL_SignalLock MkLock
|
||||
#endif
|
||||
/* in a single gc */
|
||||
Int tot_marked LOCAL_total_marked =0L
|
||||
Int tot_oldies LOCAL_total_oldies =0L
|
||||
#if DEBUG && COROUTINING
|
||||
UInt tot_smarked LOCAL_total_smarked =0L
|
||||
Int tot_marked LOCAL_total_marked =0L
|
||||
Int tot_oldies LOCAL_total_oldies =0L
|
||||
struct choicept* wl_current_B LOCAL_current_B =NULL
|
||||
CELL* wl_prev_HB LOCAL_prev_HB =NULL
|
||||
CELL* hgen LOCAL_HGEN =NULL
|
||||
CELL** ip_top LOCAL_iptop =NULL
|
||||
//#endif
|
||||
#if defined(GC_NO_TAGS)
|
||||
char* b_p LOCAL_bp =NULL
|
||||
#endif
|
||||
struct choicept *wl_current_B LOCAL_current_B =NULL
|
||||
CELL* wl_prev_HB LOCAL_prev_HB =NULL
|
||||
CELL* hgen LOCAL_HGEN =NULL
|
||||
CELL** ip_top LOCAL_iptop =NULL
|
||||
#if GC_NO_TAGS
|
||||
char* b_p LOCAL_bp =NULL
|
||||
#endif
|
||||
#if defined(TABLING) || defined(YAPOR_SBA)
|
||||
struct trail_frame* wl_sTR LOCAL_sTR =NULL
|
||||
struct trail_frame* wl_sTR0 LOCAL_sTR0 =NULL
|
||||
struct trail_frame* new_tr LOCAL_new_TR =NULL
|
||||
|
||||
#if !defined(TABLING) && !defined(YAPOR_SBA) && (defined(YAPOR) || defined(THREADS))
|
||||
Term* wl_sTR LOCAL_sTR =NULL
|
||||
Term* wl_sTR0 LOCAL_sTR0 =NULL
|
||||
Term* new_tr LOCAL_new_TR =NULL
|
||||
#else
|
||||
Term *wl_sTR LOCAL_sTR =NULL
|
||||
Term *wl_sTR0 LOCAL_sTR0 =NULL
|
||||
Term *new_tr LOCAL_new_TR =NULL
|
||||
#endif
|
||||
struct gc_mark_continuation* conttop0 LOCAL_cont_top0 =NULL
|
||||
struct gc_mark_continuation* conttop LOCAL_cont_top =NULL
|
||||
int disc_trail_entries LOCAL_discard_trail_entries =0
|
||||
gc_ma_hash_entry Gc_ma_hash_table[GC_MAVARS_HASH_SIZE] LOCAL_gc_ma_hash_table void
|
||||
gc_ma_hash_entry* Gc_ma_h_top LOCAL_gc_ma_h_top =NULL
|
||||
gc_ma_hash_entry* Gc_ma_h_list LOCAL_gc_ma_h_list =NULL
|
||||
UInt Gc_timestamp LOCAL_gc_timestamp =0L
|
||||
ADDR DB_vec LOCAL_db_vec =NULL
|
||||
ADDR DB_vec0 LOCAL_db_vec0 =NULL
|
||||
struct RB_red_blk_node* DB_root LOCAL_db_root =NULL
|
||||
struct RB_red_blk_node* DB_nil LOCAL_db_nil =NULL
|
||||
#endif /* defined(YAPOR) || defined(THREADS) */
|
||||
struct trail_frame* wl_sTR LOCAL_sTR =NULL
|
||||
struct trail_frame* wl_sTR0 LOCAL_sTR0 =NULL
|
||||
struct trail_frame* new_tr LOCAL_new_TR =NULL
|
||||
#endif /* !TABLING && !YAPOR_SBA && (YAPOR || THREADS) */
|
||||
struct gc_mark_continuation* conttop0 LOCAL_cont_top0 =NULL
|
||||
struct gc_mark_continuation* conttop LOCAL_cont_top =NULL
|
||||
int disc_trail_entries LOCAL_discard_trail_entries =0
|
||||
gc_ma_hash_entry Gc_ma_hash_table[GC_MAVARS_HASH_SIZE] LOCAL_gc_ma_hash_table void
|
||||
gc_ma_hash_entry* Gc_ma_h_top LOCAL_gc_ma_h_top =NULL
|
||||
gc_ma_hash_entry* Gc_ma_h_list LOCAL_gc_ma_h_list =NULL
|
||||
UInt Gc_timestamp LOCAL_gc_timestamp =0L
|
||||
ADDR DB_vec LOCAL_db_vec =NULL
|
||||
ADDR DB_vec0 LOCAL_db_vec0 =NULL
|
||||
struct RB_red_blk_node* DB_root LOCAL_db_root =NULL
|
||||
struct RB_red_blk_node* DB_nil LOCAL_db_nil =NULL
|
||||
|
||||
|
||||
sigjmp_buf gc_restore LOCAL_gc_restore void
|
||||
struct array_entry* dynamic_arrays LOCAL_DynamicArrays =NULL PtoArrayEAdjust
|
||||
struct static_array_entry* static_arrays LOCAL_StaticArrays =NULL PtoArraySAdjust
|
||||
struct global_entry* global_variables LOCAL_GlobalVariables =NULL PtoGlobalEAdjust
|
||||
int allow_restart LOCAL_AllowRestart =FALSE
|
||||
sigjmp_buf gc_restore LOCAL_gc_restore void
|
||||
struct array_entry* dynamic_arrays LOCAL_DynamicArrays =NULL PtoArrayEAdjust
|
||||
struct static_array_entry* static_arrays LOCAL_StaticArrays =NULL PtoArraySAdjust
|
||||
struct global_entry* global_variables LOCAL_GlobalVariables =NULL PtoGlobalEAdjust
|
||||
int allow_restart LOCAL_AllowRestart =FALSE
|
||||
|
||||
// Thread Local Area for Fast Storage of Intermediate Compiled Code.
|
||||
struct mem_blk* cmem_first_block LOCAL_CMemFirstBlock =NULL
|
||||
UInt cmem_first_block_sz LOCAL_CMemFirstBlockSz =0L
|
||||
struct mem_blk* cmem_first_block LOCAL_CMemFirstBlock =NULL
|
||||
UInt cmem_first_block_sz LOCAL_CMemFirstBlockSz =0L
|
||||
|
||||
// Thread Local Area for Labels.
|
||||
Int* label_first_array LOCAL_LabelFirstArray =NULL
|
||||
UInt label_first_array_sz LOCAL_LabelFirstArraySz =0L
|
||||
Int* label_first_array LOCAL_LabelFirstArray =NULL
|
||||
UInt label_first_array_sz LOCAL_LabelFirstArraySz =0L
|
||||
|
||||
// Thread Local Area for SWI-Prolog emulation routines.
|
||||
struct PL_local_data *Yap_ld_ LOCAL_PL_local_data_p =Yap_InitThreadIO(wid)
|
||||
|
||||
struct open_query_struct* _execution LOCAL_execution =NULL
|
||||
struct PL_local_data* Yap_ld_ LOCAL_PL_local_data_p =Yap_InitThreadIO(wid)
|
||||
|
||||
struct open_query_struct* _execution LOCAL_execution =NULL
|
||||
|
||||
#ifdef THREADS
|
||||
struct thandle thread_handle LOCAL_ThreadHandle InitThreadHandle(wid)
|
||||
#define FOREIGN_ThreadHandle(wid) (Yap_WLocal[(wid)]->thread_handle)
|
||||
#define MY_ThreadHandle (Yap_WLocal[worker_id]->thread_handle)
|
||||
struct thandle thread_handle LOCAL_ThreadHandle InitThreadHandle(wid)
|
||||
#define FOREIGN_ThreadHandle(wid) (Yap_WLocal[(wid)]->thread_handle)
|
||||
#define MY_ThreadHandle (Yap_WLocal[worker_id]->thread_handle)
|
||||
#endif
|
||||
|
||||
// END WORKER LOCAL STUFF
|
||||
|
Reference in New Issue
Block a user