server-skynet-source-3rd-je.../test/unit
gnzlbg 3d29d11ac2 Clean compilation -Wextra
Before this commit jemalloc produced many warnings when compiled with -Wextra
with both Clang and GCC. This commit fixes the issues raised by these warnings
or suppresses them if they were spurious at least for the Clang and GCC
versions covered by CI.

This commit:

* adds `JEMALLOC_DIAGNOSTIC` macros: `JEMALLOC_DIAGNOSTIC_{PUSH,POP}` are
  used to modify the stack of enabled diagnostics. The
  `JEMALLOC_DIAGNOSTIC_IGNORE_...` macros are used to ignore a concrete
  diagnostic.

* adds `JEMALLOC_FALLTHROUGH` macro to explicitly state that falling
  through `case` labels in a `switch` statement is intended

* Removes all UNUSED annotations on function parameters. The warning
  -Wunused-parameter is now disabled globally in
  `jemalloc_internal_macros.h` for all translation units that include
  that header. It is never re-enabled since that header cannot be
  included by users.

* locally suppresses some -Wextra diagnostics:

  * `-Wmissing-field-initializer` is buggy in older Clang and GCC versions,
    where it does not understanding that, in C, `= {0}` is a common C idiom
    to initialize a struct to zero

  * `-Wtype-bounds` is suppressed in a particular situation where a generic
    macro, used in multiple different places, compares an unsigned integer for
    smaller than zero, which is always true.

  * `-Walloc-larger-than-size=` diagnostics warn when an allocation function is
    called with a size that is too large (out-of-range). These are suppressed in
    the parts of the tests where `jemalloc` explicitly does this to test that the
    allocation functions fail properly.

* adds a new CI build bot that runs the log unit test on CI.

Closes #1196 .
2018-07-09 21:40:42 -07:00
..
a0.c Remove extraneous parens around return arguments. 2017-01-20 21:43:07 -08:00
arena_reset_prof.c Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00
arena_reset_prof.sh Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00
arena_reset.c Fix background thread index issues with max_background_threads. 2018-05-15 12:25:23 -07:00
atomic.c Remove the pre-C11-atomics API, which is now unused 2017-04-05 16:25:37 -07:00
background_thread_enable.c Fix the max_background_thread test. 2018-05-15 14:00:51 -07:00
background_thread.c Combine background_thread started / paused into state. 2017-06-12 08:56:14 -07:00
base.c Add stats for metadata_thp. 2017-08-30 16:47:32 -07:00
bit_util.c Header refactoring: move bit_util.h out of the catchall 2017-04-18 18:35:03 -07:00
bitmap.c Revert "Remove BITMAP_USE_TREE." 2017-04-18 19:01:04 -07:00
ckh.c Replace tabs following #define with spaces. 2017-01-20 21:45:53 -08:00
decay.c Implementing opt.background_thread. 2017-05-23 12:26:20 -07:00
decay.sh Refactor *decay_time into *decay_ms. 2017-05-18 11:33:45 -07:00
div.c Add the div module, which allows fast division by dynamic values. 2017-12-21 14:25:43 -08:00
emitter.c Clean compilation -Wextra 2018-07-09 21:40:42 -07:00
extent_quantize.c Replace tabs following #define with spaces. 2017-01-20 21:45:53 -08:00
fork.c Add a test of behavior under multi-threaded forking. 2017-07-10 18:17:12 -07:00
hash.c Header refactoring: hash - unify and remove from catchall. 2017-04-25 09:51:38 -07:00
hook.c Hooks: Protect against reentrancy. 2018-05-18 11:43:03 -07:00
huge.c Rename huge_threshold to experimental, and tweak documentation. 2018-06-29 10:35:02 -07:00
junk_alloc.c Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00
junk_alloc.sh Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00
junk_free.c Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00
junk_free.sh Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00
junk.c Pull out arena_bin_info_t and arena_bin_t into their own file. 2017-12-18 16:29:10 -08:00
junk.sh Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00
log.c Logging: capitalize log macro. 2017-10-02 20:44:43 -07:00
mallctl.c Rename huge_threshold to experimental, and tweak documentation. 2018-06-29 10:35:02 -07:00
malloc_io.c Disentangle assert and util 2017-03-06 15:08:43 -08:00
math.c Replace tabs following #define with spaces. 2017-01-20 21:45:53 -08:00
mq.c Replace tabs following #define with spaces. 2017-01-20 21:45:53 -08:00
mtx.c Replace tabs following #define with spaces. 2017-01-20 21:45:53 -08:00
nstime.c Add background thread related stats. 2017-05-23 12:26:20 -07:00
pack.c Skip test/unit/pack when profiling is enabled. 2017-12-18 12:47:46 -08:00
pack.sh Refactor *decay_time into *decay_ms. 2017-05-18 11:33:45 -07:00
pages.c Add opt.thp which allows explicit hugepage usage. 2018-03-08 13:08:06 -08:00
ph.c Header refactoring: break out ph.h dependencies 2017-04-11 11:52:30 -07:00
prng.c Convert prng module to use C11-style atomics 2017-04-04 16:45:52 -07:00
prof_accum.c Add hooking functionality 2017-04-07 14:10:27 -07:00
prof_accum.sh Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00
prof_active.c Add hooking functionality 2017-04-07 14:10:27 -07:00
prof_active.sh Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00
prof_gdump.c Add hooking functionality 2017-04-07 14:10:27 -07:00
prof_gdump.sh Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00
prof_idump.c Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00
prof_idump.sh Remove --disable-tcache. 2017-04-21 10:06:12 -07:00
prof_reset.c Add hooking functionality 2017-04-07 14:10:27 -07:00
prof_reset.sh Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00
prof_tctx.c Pass alloc_ctx down profiling path. 2017-04-12 13:55:39 -07:00
prof_tctx.sh Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00
prof_thread_name.c Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00
prof_thread_name.sh Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00
ql.c Header refactoring: break out ql.h dependencies 2017-04-11 11:52:30 -07:00
qr.c Header refactoring: break out qr.h dependencies 2017-04-11 11:52:30 -07:00
rb.c Header refactoring: break out rb.h dependencies 2017-04-11 11:52:30 -07:00
retained.c Header refactoring: Pull size helpers out of jemalloc module. 2017-05-31 13:08:45 -07:00
rtree.c Add a "dumpable" bit to the extent state. 2017-10-16 15:35:49 -07:00
seq.c Add the Seq module, a simple seqlock implementation. 2018-05-18 11:43:03 -07:00
SFMT.c Replace tabs following #define with spaces. 2017-01-20 21:45:53 -08:00
size_classes.c Header refactoring: Pull size helpers out of jemalloc module. 2017-05-31 13:08:45 -07:00
slab.c Pull out arena_bin_info_t and arena_bin_t into their own file. 2017-12-18 16:29:10 -08:00
smoothstep.c Cleanup smoothstep.sh / .h. 2017-05-25 16:52:10 -07:00
spin.c Header refactoring: unify and de-catchall rtree module. 2017-05-31 13:08:45 -07:00
stats_print.c Fix type warning on Windows. 2018-04-09 16:50:30 -07:00
stats.c Pull out arena_bin_info_t and arena_bin_t into their own file. 2017-12-18 16:29:10 -08:00
test_hooks.c Rename hooks module to test_hooks. 2018-05-18 11:43:03 -07:00
ticker.c Header refactoring: ticker module - remove from the catchall and unify. 2017-04-24 10:33:21 -07:00
tsd.c TSD: Add the ability to enter a global slow path. 2018-05-18 11:43:03 -07:00
witness.c Header refactoring: unify and de-catchall witness code. 2017-05-24 15:27:30 -07:00
zero.c Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00
zero.sh Use MALLOC_CONF rather than malloc_conf for tests. 2017-02-23 08:57:02 -08:00