22GLOBAL_INIT(
int, Initialised, FALSE);
23GLOBAL_INIT(
int, InitialisedFromPL, FALSE);
24GLOBAL_INIT(
int, PL_Argc, 0);
25GLOBAL_INIT(
char **, PL_Argv, NULL);
26GLOBAL_INIT(
bool, FAST_BOOT_FLAG,
false);
29GLOBAL_INIT(
struct halt_hook *, HaltHooks, NULL);
30GLOBAL_INIT(fptr_t, JIT_finalizer, NULL);
33GLOBAL_INIT(
int, AllowLocalExpansion, TRUE);
34GLOBAL_INIT(
int, AllowGlobalExpansion, TRUE);
35GLOBAL_INIT(
int, AllowTrailExpansion, TRUE);
36GLOBAL_INIT(UInt, SizeOfOverflow, 0);
39GLOBAL_INIT(UInt, AGcThreshold, 10000);
40GLOBAL_INIT(Agc_hook, AGCHook, NULL);
45GLOBAL_INIT(UInt, NOfThreads, 1);
47GLOBAL_INIT(UInt, NOfThreadsCreated, 1);
49GLOBAL_INIT(UInt, ThreadsTotalTime, 0L);
51GLOBAL_INITF(lockvar, ThreadHandlesLock, MkLock);
54#if defined(YAPOR) || defined(THREADS);
56GLOBAL_INITF(lockvar, BGL, MkLock);
59#if defined(YAPOR) || defined(TABLING);
65GLOBAL(
int, PrologShouldHandleInterrupts);
70GLOBAL(pthread_t, master_thread);
71GLOBAL_INIT(
struct thread_mbox *, named_mboxes, NULL);
72GLOBAL_INITF(lockvar, mboxq_lock, MkLock);
73GLOBAL_INIT(UInt, mbox_count, 0);
74GLOBAL(
struct swi_mutex *, WithMutex);
79#if defined(THREADS) || defined(YAPOR);
80GLOBAL_INITF(lockvar, StreamDescLock, MkLock);
90GLOBAL_ARRAY(
ext_op, attas, attvars_ext + 1);
94GLOBAL(
int, agc_calls);
95GLOBAL(YAP_ULONG_LONG, agc_collected);
97GLOBAL_INIT(Int, tot_agc_time, 0);
99GLOBAL_INIT(Int, tot_agc_recovered, 0);
103GLOBAL_INIT(
struct MMAP_ARRAY_BLOCK *, mmap_arrays, NULL);
108GLOBAL_ARRAY(
char, Option, 20);
109GLOBAL(YP_FILE *, logfile);
115#if defined(COFF) || defined(A_OUT);
117GLOBAL_ARRAY(
char, Executable, MAX_PATH);
120GLOBAL_INIT(
int, OpaqueHandlersCount, 0);
124GLOBAL_ARRAY(
char, pwd, MAX_PATH);
130GLOBAL(
const char *, RestoreFile);
133GLOBAL(Int, ProfCalls);
135GLOBAL(Int, ProfHGrows);
136GLOBAL(Int, ProfSGrows);
137GLOBAL(Int, ProfMallocs);
138GLOBAL(Int, ProfIndexing);
143GLOBAL_INIT(
char *, DIRNAME, NULL);
145GLOBAL_INIT(
int, ProfilerOn, FALSE);
146GLOBAL_INIT(FILE *, FProf, NULL);
147GLOBAL_INIT(FILE *, FPreds, NULL);
152GLOBAL_INIT(
struct swi_mutex *, FreeMutexes, NULL);
153GLOBAL_INIT(
struct swi_mutex *, mutex_backbone, NULL);
154GLOBAL_INITF(lockvar, MUT_ACCESS, MkLock);
157GLOBAL_INIT(
char *, Home, NULL);
160GLOBAL_INIT(
char *, CharConversionTable, NULL);
161GLOBAL_INIT(
char *, CharConversionTable2, NULL);
164GLOBAL_INIT(
int, MaxPriority, 1200);
167GLOBAL_INIT(
struct AliasDescS *, FileAliases, Yap_InitStandardAliases());
168GLOBAL(
int, NOfFileAliases);
169GLOBAL(
int, SzOfFileAliases);
VFS_t * Yap_InitAssetManager(void)
@ argv
read-only atom, it describes the list with all arguments received by YAP at boot
opaque variables can interact with the system