0.9.9.12:
[sbcl.git] / src / runtime / core.h
index 2fcbd13..57df1cb 100644 (file)
 #ifndef _CORE_H_
 #define _CORE_H_
 
+#include "sbcl.h"
 #include "runtime.h"
 
 struct ndir_entry {
-#ifndef alpha
-       long identifier;
-       long nwords;
-       long data_page;
-       long address;
-       long page_count;
+#ifndef LISP_FEATURE_ALPHA
+    long identifier;
+    long nwords;
+    long data_page;
+    long address;
+    long page_count;
 #else
-       u32 identifier;
-       u32 nwords;
-       u32 data_page;
-       u32 address;
-       u32 page_count;
+    u32 identifier;
+    u32 nwords;
+    u32 data_page;
+    u32 address;
+    u32 page_count;
 #endif
 };
 
-extern lispobj load_core_file(char *file);
+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
+ * against a .core built without :SB-SHOW (or against various grosser
+ * mismatches, e.g. a .core built with an old version of the code
+ * against a runtime with patches which add new C code) */
+extern unsigned char build_id[];
 
 #endif