mirror of
https://github.com/jemalloc/jemalloc.git
synced 2026-08-24 08:03:32 +03:00
Replace experimental_infallible_new with compile-time flag
The runtime option aborted on every OOM, breaking new(std::nothrow) semantics. Replace with configure-time --enable-cxx-infallible-new (default off): when on, throwing new aborts (size logged) and nothrow returns null; when off, standard new_handler + bad_alloc / null behavior is preserved. Under LTO the on-path lets the compiler prove operator new is no-throw.
This commit is contained in:
parent
a6048680a8
commit
160ab9d7f6
19 changed files with 103 additions and 44 deletions
|
|
@ -1623,6 +1623,7 @@ stats_general_print(emitter_t *emitter) {
|
|||
CONFIG_WRITE_BOOL(cache_oblivious);
|
||||
CONFIG_WRITE_BOOL(debug);
|
||||
CONFIG_WRITE_BOOL(fill);
|
||||
CONFIG_WRITE_BOOL(infallible_new);
|
||||
CONFIG_WRITE_BOOL(lazy_lock);
|
||||
emitter_kv(emitter, "malloc_conf", "config.malloc_conf",
|
||||
emitter_type_string, &config_malloc_conf);
|
||||
|
|
@ -1774,7 +1775,6 @@ stats_general_print(emitter_t *emitter) {
|
|||
OPT_WRITE_BOOL("zero")
|
||||
OPT_WRITE_BOOL("utrace")
|
||||
OPT_WRITE_BOOL("xmalloc")
|
||||
OPT_WRITE_BOOL("experimental_infallible_new")
|
||||
OPT_WRITE_BOOL("experimental_tcache_gc")
|
||||
OPT_WRITE_BOOL("tcache")
|
||||
OPT_WRITE_SIZE_T("tcache_max")
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue