summaryrefslogtreecommitdiff
path: root/include/private
diff options
context:
space:
mode:
authorIvan Maidanski <ivmai@mail.ru>2022-11-25 21:37:29 +0300
committerIvan Maidanski <ivmai@mail.ru>2022-11-25 21:37:29 +0300
commitfda6160da0f130f6fea8137a734b7069c9392d7f (patch)
treea03d9fc738127d81add801947c24501546904c3c /include/private
parente09c5bc6683cee74fa4a7bfcf29a89dc51c9e9f0 (diff)
downloadbdwgc-fda6160da0f130f6fea8137a734b7069c9392d7f.tar.gz
Enable HBLKSIZE values up to 64K
This is to support configurations with 64 KB page size. * doc/README.macros (HBLKSIZE): Change maximum value from 16384 to 65536. * include/private/gc_priv.h [!HBLKSIZE && (LARGE_CONFIG || !SMALL_CONFIG) && !ALPHA && SN_TARGET_PSP2] (CPP_LOG_HBLKSIZE): Do not define. * include/private/gc_priv.h [HBLKSIZE && HBLKSIZE==32768] (CPP_LOG_HBLKSIZE): Set to 15. * include/private/gc_priv.h [HBLKSIZE && HBLKSIZE==65536] (CPP_LOG_HBLKSIZE): Set to 16. * include/private/gcconfig.h [ARM32 && SN_TARGET_PSP2 && !HBLKSIZE] (HBLKSIZE): Set to 65536.
Diffstat (limited to 'include/private')
-rw-r--r--include/private/gc_priv.h6
-rw-r--r--include/private/gcconfig.h3
2 files changed, 7 insertions, 2 deletions
diff --git a/include/private/gc_priv.h b/include/private/gc_priv.h
index f3e1b7c3..5ee0841e 100644
--- a/include/private/gc_priv.h
+++ b/include/private/gc_priv.h
@@ -948,8 +948,6 @@ EXTERN_C_BEGIN
# if defined(LARGE_CONFIG) || !defined(SMALL_CONFIG)
# ifdef ALPHA
# define CPP_LOG_HBLKSIZE 13
-# elif defined(SN_TARGET_PSP2)
-# define CPP_LOG_HBLKSIZE 16 /* page size is set to 64 KB */
# else
# define CPP_LOG_HBLKSIZE 12
# endif
@@ -969,6 +967,10 @@ EXTERN_C_BEGIN
# define CPP_LOG_HBLKSIZE 13
# elif HBLKSIZE == 16384
# define CPP_LOG_HBLKSIZE 14
+# elif HBLKSIZE == 32768
+# define CPP_LOG_HBLKSIZE 15
+# elif HBLKSIZE == 65536
+# define CPP_LOG_HBLKSIZE 16
# elif !defined(CPPCHECK)
# error Bad HBLKSIZE value
# endif
diff --git a/include/private/gcconfig.h b/include/private/gcconfig.h
index 95b15049..01f9b7cb 100644
--- a/include/private/gcconfig.h
+++ b/include/private/gcconfig.h
@@ -2069,6 +2069,9 @@ EXTERN_C_BEGIN
# ifdef SN_TARGET_PSP2
# define OS_TYPE "SN_TARGET_PSP2"
# define NO_HANDLE_FORK 1
+# ifndef HBLKSIZE
+# define HBLKSIZE 65536 /* page size is 64 KB */
+# endif
# define DATASTART (ptr_t)ALIGNMENT
# define DATAEND (ptr_t)ALIGNMENT
void *psp2_get_stack_bottom(void);