X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fruntime%2Fsave.c;h=f4da52e9bf8086040d5dc9cd816d295fcbac8dfc;hb=f0f3805c145f2699701997761e2c6f55c475c192;hp=f9b6867a28b5ca7434691f50ee54be50edef9a7b;hpb=b727b3bff6f2a989e8e20e199945c2bf768214a9;p=sbcl.git diff --git a/src/runtime/save.c b/src/runtime/save.c index f9b6867..f4da52e 100644 --- a/src/runtime/save.c +++ b/src/runtime/save.c @@ -79,7 +79,7 @@ write_bytes_to_file(FILE * file, char *addr, long bytes, int compression) { if (compression == COMPRESSION_LEVEL_NONE) { while (bytes > 0) { - long count = fwrite(addr, 1, bytes, file); + sword_t count = fwrite(addr, 1, bytes, file); if (count > 0) { bytes -= count; addr += count; @@ -309,19 +309,19 @@ save_to_filehandle(FILE *file, char *filename, lispobj init_function, #ifdef LISP_FEATURE_GENCGC { - size_t size = (last_free_page*sizeof(long)+os_vm_page_size-1) + size_t size = (last_free_page*sizeof(sword_t)+os_vm_page_size-1) &~(os_vm_page_size-1); uword_t *data = calloc(size, 1); if (data) { uword_t word; - long offset; + sword_t offset; page_index_t i; for (i = 0; i < last_free_page; i++) { /* Thanks to alignment requirements, the two low bits * are always zero, so we can use them to store the * allocation type -- region is always closed, so only * the two low bits of allocation flags matter. */ - word = page_table[i].region_start_offset; + word = page_table[i].scan_start_offset; gc_assert((word & 0x03) == 0); data[i] = word | (0x03 & page_table[i].allocated); }