From 4a9f5500c4daf8ed1573c41051ff23d5ea15d225 Mon Sep 17 00:00:00 2001 From: Nick Briggs Date: Mon, 24 Jul 2023 20:43:25 -0700 Subject: [PATCH] struct buf is missing definition for byte-swapped bigvm case (#477) While there was a definition for the pre-bigvm case, with 24-bit pointers, for byteswapped (little-endian) systems, there was no structure definition for the bigvm case, with 28-bit pointers. --- src/gcfinal.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/gcfinal.c b/src/gcfinal.c index d49f8fc..76d3bcf 100644 --- a/src/gcfinal.c +++ b/src/gcfinal.c @@ -97,6 +97,18 @@ struct buf { }; #endif /* BIGVM */ #else +#ifdef BIGVM +struct buf { + LispPTR filepage; + LispPTR vmempage; + LispPTR buffernext; + unsigned sysnext : 28; + unsigned unused : 1; + unsigned iodirty : 1; + unsigned usermapped : 1; + unsigned noreference : 1; +}; +#else struct buf { LispPTR filepage; LispPTR vmempage; @@ -107,6 +119,7 @@ struct buf { unsigned usermapped : 1; unsigned noreference : 1; }; +#endif /* BIGVM */ #endif /* BYTESWAP */ /************* The following procedure is common !! **************************/