2021-03-23 19:47:51 +01:00
|
|
|
|
|
|
|
#ifndef GPSP_CONFIG_H
|
|
|
|
#define GPSP_CONFIG_H
|
|
|
|
|
2021-07-21 00:10:30 +02:00
|
|
|
/* Default ROM buffer size in megabytes (this is a maximum value!) */
|
|
|
|
#ifndef ROM_BUFFER_SIZE
|
2021-07-14 01:17:55 +02:00
|
|
|
#define ROM_BUFFER_SIZE 32
|
2021-07-21 00:10:30 +02:00
|
|
|
#endif
|
2021-07-14 01:17:55 +02:00
|
|
|
|
2021-03-23 19:47:51 +01:00
|
|
|
/* Cache sizes and their config knobs */
|
2021-07-23 18:50:44 +02:00
|
|
|
#if defined(SMALL_TRANSLATION_CACHE)
|
2021-07-08 21:29:48 +02:00
|
|
|
#define ROM_TRANSLATION_CACHE_SIZE (1024 * 1024 * 2)
|
2021-03-23 19:47:51 +01:00
|
|
|
#define RAM_TRANSLATION_CACHE_SIZE (1024 * 384)
|
|
|
|
#else
|
2021-07-08 21:29:48 +02:00
|
|
|
#define ROM_TRANSLATION_CACHE_SIZE (1024 * 1024 * 10)
|
|
|
|
#define RAM_TRANSLATION_CACHE_SIZE (1024 * 512)
|
2021-03-23 19:47:51 +01:00
|
|
|
#endif
|
|
|
|
|
2022-01-04 18:59:07 +01:00
|
|
|
/* Should be an upperbound to the maximum number of bytes a single JIT'ed
|
|
|
|
instruction can take. STM/LDM are tipically the biggest ones */
|
|
|
|
#define TRANSLATION_CACHE_LIMIT_THRESHOLD (1024 * 2)
|
2021-07-08 21:29:48 +02:00
|
|
|
|
2021-03-23 19:47:51 +01:00
|
|
|
/* Hash table size for ROM trans cache lookups */
|
2021-10-30 22:54:51 +02:00
|
|
|
#define ROM_BRANCH_HASH_BITS 16
|
|
|
|
#define ROM_BRANCH_HASH_SIZE (1 << ROM_BRANCH_HASH_BITS)
|
2021-03-23 19:47:51 +01:00
|
|
|
|
|
|
|
#endif
|