/* This file, hstruct.h, was generated automatically by "yap -L misc/buildheap" please do not update, update misc/HEAPFIELDS instead */ typedef struct worker_local { UInt Yap_HoleSize; struct malloc_state *Yap_av; #if USE_DL_MALLOC struct Yap_MemoryHoles[MAX_DLMALLOC_HOLES] void; UInt Yap_NOfMemoryHoles; #if defined(YAPOR) || defined(THREADS) lockvar DLMallocLock; #endif #endif #if USE_DL_MALLOC || (USE_SYSTEM_MALLOC && HAVE_MALLINFO) #ifndef HeapUsed #define HeapUsed Yap_givemallinfo() #endif Int NotHeapUsed; #else Int HeapUsed; #endif Int HeapMax; ADDR HeapTop; ADDR HeapLim; struct FREEB *FreeBlocks; #if defined(YAPOR) || defined(THREADS) lockvar FreeBlocksLock; lockvar HeapUsedLock; lockvar HeapTopLock; int HeapTopOwner; #endif UInt MaxStack; UInt MaxTrail; #if USE_THREADED_CODE op_entry *OP_RTABLE; #endif OPCODE EXECUTE_CPRED_OP_CODE; OPCODE EXPAND_OP_CODE; OPCODE FAIL_OPCODE; OPCODE INDEX_OPCODE; OPCODE LOCKPRED_OPCODE; OPCODE ORLAST_OPCODE; OPCODE UNDEF_OPCODE; OPCODE RETRY_USERC_OPCODE; OPCODE EXECUTE_CPRED_OPCODE; UInt NOfAtoms; UInt AtomHashTableSize; UInt WideAtomHashTableSize; UInt NOfWideAtoms; AtomHashEntry INVISIBLECHAIN; AtomHashEntry *WideHashChain; AtomHashEntry *HashChain; #include "tatoms.h" #ifdef EUROTRA Term TermDollarU; #endif Term USER_MODULE; Term IDB_MODULE; Term ATTRIBUTES_MODULE; Term CHARSIO_MODULE; Term CHTYPE_MODULE; Term TERMS_MODULE; Term SYSTEM_MODULE; Term READUTIL_MODULE; Term HACKS_MODULE; Term ARG_MODULE; Term GLOBALS_MODULE; Term SWI_MODULE; Term DBLOAD_MODULE; Term RANGE_MODULE; Term ERROR_MODULE; struct mod_entry *CurrentModules; Prop HIDDEN_PREDICATES; union flagTerm* GLOBAL_Flags; UInt GLOBAL_flagCount; yap_exec_mode Yap_ExecutionMode; UInt PredsInHashTable; uint64_t PredHashTableSize; struct pred_entry **PredHash; #if defined(YAPOR) || defined(THREADS) rwlock_t PredHashRWLock; #endif struct pred_entry *CreepCode; struct pred_entry *UndefCode; struct pred_entry *SpyCode; struct pred_entry *PredFail; struct pred_entry *PredTrue; #ifdef COROUTINING struct pred_entry *WakeUpCode; #endif struct pred_entry *PredGoalExpansion; struct pred_entry *PredMetaCall; struct pred_entry *PredTraceMetaCall; struct pred_entry *PredDollarCatch; struct pred_entry *PredRecordedWithKey; struct pred_entry *PredLogUpdClause; struct pred_entry *PredLogUpdClauseErase; struct pred_entry *PredLogUpdClause0; struct pred_entry *PredStaticClause; struct pred_entry *PredThrow; struct pred_entry *PredHandleThrow; struct pred_entry *PredIs; struct pred_entry *PredSafeCallCleanup; struct pred_entry *PredRestoreRegs; struct pred_entry *PredCommentHook; #ifdef YAPOR struct pred_entry *PredGetwork; #endif /* YAPOR */ struct pred_entry *PredProcedure; #ifdef LOW_LEVEL_TRACER int Yap_do_low_level_trace; #if defined(YAPOR) || defined(THREADS) lockvar Yap_low_level_trace_lock; #endif #endif UInt Yap_ClauseSpace; UInt Yap_IndexSpace_Tree; UInt Yap_IndexSpace_EXT; UInt Yap_IndexSpace_SW; UInt Yap_LUClauseSpace; UInt Yap_LUIndexSpace_Tree; UInt Yap_LUIndexSpace_CP; UInt Yap_LUIndexSpace_EXT; UInt Yap_LUIndexSpace_SW; yamop COMMA_CODE[5]; yamop DUMMYCODE[1]; yamop FAILCODE[1]; yamop NOCODE[1]; yamop ENV_FOR_TRUSTFAIL[2]; yamop *TRUSTFAILCODE; yamop ENV_FOR_YESCODE[2]; yamop *YESCODE; yamop RTRYCODE[1]; #ifdef BEAM yamop BEAM_RETRY_CODE[1]; #endif /* BEAM */ #ifdef YAPOR yamop GETWORK[1]; yamop GETWORK_SEQ[1]; yamop GETWORK_FIRST_TIME[1]; #endif /* YAPOR */ #ifdef TABLING yamop LOAD_ANSWER[1]; yamop TRY_ANSWER[1]; yamop ANSWER_RESOLUTION[1]; yamop COMPLETION[1]; #ifdef THREADS_CONSUMER_SHARING yamop ANSWER_RESOLUTION_COMPLETION[1]; #endif /* THREADS_CONSUMER_SHARING */ #endif /* TABLING */ yamop *P_before_spy; yamop *RETRY_C_RECORDEDP_CODE; yamop *RETRY_C_RECORDED_K_CODE; int PROFILING; int CALL_COUNTING; int optimizer_on; int compile_mode; int profiling; int call_counting; int compile_arrays; #if defined(YAPOR) || defined(THREADS) lockvar DBTermsListLock; #endif struct dbterm_list *DBTermsList; yamop *ExpandClausesFirst; yamop *ExpandClausesLast; UInt Yap_ExpandClauses; #if defined(YAPOR) || defined(THREADS) lockvar ExpandClausesListLock; lockvar OpListLock; #endif #ifdef DEBUG UInt Yap_NewCps; UInt Yap_LiveCps; UInt Yap_DirtyCps; UInt Yap_FreedCps; #endif UInt Yap_expand_clauses_sz; struct udi_info *UdiControlBlocks; Int STATIC_PREDICATES_MARKED; Prop *INT_KEYS; Prop *INT_LU_KEYS; Prop *INT_BB_KEYS; UInt INT_KEYS_SIZE; UInt INT_KEYS_TIMESTAMP; UInt INT_BB_KEYS_SIZE; int UPDATE_MODE; struct DB_STRUCT *DBErasedMarker; struct logic_upd_clause *LogDBErasedMarker; struct static_clause *DeadStaticClauses; struct static_mega_clause *DeadMegaClauses; struct static_index *DeadStaticIndices; struct logic_upd_clause *DBErasedList; struct logic_upd_index *DBErasedIList; #if defined(YAPOR) || defined(THREADS) lockvar DeadStaticClausesLock; lockvar DeadMegaClausesLock; lockvar DeadStaticIndicesLock; #endif #ifdef COROUTINING int NUM_OF_ATTS; UInt Yap_AttsSize; #endif struct operator_entry *OpList; struct ForeignLoadItem *ForeignCodeLoaded; ADDR ForeignCodeBase; ADDR ForeignCodeTop; ADDR ForeignCodeMax; struct record_list *Yap_Records; Atom *SWI_Atoms; Functor *SWI_Functors; swi_rev_hash SWI_ReverseHash[N_SWI_HASH]; Int AtomTranslations; Int MaxAtomTranslations; Int FunctorTranslations; Int MaxFunctorTranslations; Atom EmptyWakeups[MAX_EMPTY_WAKEUPS]; int MaxEmptyWakeups; struct YAP_blob_t *BlobTypes; struct AtomEntryStruct *Blobs; UInt NOfBlobs; UInt NOfBlobsMax; #if defined(YAPOR) || defined(THREADS) lockvar Blobs_Lock; #endif } w_local;