diff options
Diffstat (limited to 'doc/guides/mrbconf.md')
| -rw-r--r-- | doc/guides/mrbconf.md | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/doc/guides/mrbconf.md b/doc/guides/mrbconf.md index b5bc8c85c..e71346ae6 100644 --- a/doc/guides/mrbconf.md +++ b/doc/guides/mrbconf.md @@ -151,17 +151,18 @@ largest value of required alignment. ## Reduce heap memory configuration -`MRB_USE_LINK_TIME_RO_DATA_P` +`MRB_USE_ETEXT_RO_DATA_P` -* Only available on ELF platforms. -* If you specify the address of a read-only section when creating a symbol or string, that string will be used as it is. -* Heap memory can be saved. -* Uses `__ehdr_start` and `__init_array_start`. -* It must be `__ehdr_start < data_addr < __init_array_start`. +* Use `etext` and `edata` section addresses defined by the linker to detect read-only data. +* Those addresses are widely available, but not portable, nor standardized. +* This macro is defined by default on User-mode Linux. + +`MRB_NO_DEFAULT_RO_DATA_P` + +* Define this macro when the default `mrb_ro_data_p()` does not work for any reason. `MRB_USE_CUSTOM_RO_DATA_P` -* Takes precedence over `MRB_USE_LINK_TIME_RO_DATA_P`. * Please try if `MRB_USE_LINK_TIME_RO_DATA_P` is not available. * The `mrb_ro_data_p()` function is implemented by the user in an arbitrary file. * The prototype declaration is `mrb_bool mrb_ro_data_p(const char *ptr)`. |
