X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fruntime%2Fcore.h;h=594026f6cc2cec7a0300c9e3318a4cfa9fd9861c;hb=0a5ca77548b8a9f3488b176f44662d421b588a4e;hp=efda49bfe74c168c1eea48dec213d3773afaeb55;hpb=cf4cb9554515c59eddbde38d1cf236339c37f55f;p=sbcl.git diff --git a/src/runtime/core.h b/src/runtime/core.h index efda49b..594026f 100644 --- a/src/runtime/core.h +++ b/src/runtime/core.h @@ -16,12 +16,12 @@ #include "runtime.h" struct ndir_entry { -#ifndef alpha - long identifier; - long nwords; - long data_page; - long address; - long page_count; +#ifndef LISP_FEATURE_ALPHA + sword_t identifier; + sword_t nwords; + sword_t data_page; + sword_t address; + sword_t page_count; #else u32 identifier; u32 nwords; @@ -31,7 +31,18 @@ struct ndir_entry { #endif }; -extern lispobj load_core_file(char *file); +/* Tri-state flag to determine whether we attempt to mark pages + * as targets for virtual memory deduplication (ala MADV_MERGEABLE + * on Linux). + * + * 1: Yes + * 0: No + * -1: default, yes for compressed cores, no otherwise. + */ +extern int merge_core_pages; + +extern lispobj load_core_file(char *file, os_vm_offset_t offset); +extern os_vm_offset_t search_for_embedded_core(char *file); /* arbitrary string identifying this build, embedded in .core files to * prevent people mismatching a runtime built e.g. with :SB-SHOW