server-skynet-source-3rd-je.../include/jemalloc
Dave Watson 2319152d9f jemalloc cpp new/delete bindings
Adds cpp bindings for jemalloc, along with necessary autoconf settings.
This is mostly to add sized deallocation support, which can't be added
from C directly.  Sized deallocation is ~10% microbench improvement.

* Import ax_cxx_compile_stdcxx.m4 from the autoconf repo, seems like the
  easiest way to get c++14 detection.
* Adds various other changes, like CXXFLAGS, to configure.ac.
* Adds new rules to Makefile.in for src/jemalloc-cpp.cpp, and a basic
  unittest.
* Both new and delete are overridden, to ensure jemalloc is used for
  both.
* TODO future enhancement of avoiding extra PLT thunks for new and
  delete - sdallocx and malloc are publicly exported jemalloc symbols,
  using an alias would link them directly.  Unfortunately, was having
  trouble getting it to play nice with jemalloc's namespace support.

Testing:
Tested gcc 4.8, gcc 5, gcc 5.2, clang 4.0.  Only gcc >= 5 has sized
deallocation support, verified that the rest build correctly.

Tested mac osx and Centos.

Tested --with-jemalloc-prefix and --without-export.

This resolves #202.
2016-12-12 18:36:06 -08:00
..
internal jemalloc cpp new/delete bindings 2016-12-12 18:36:06 -08:00
jemalloc_defs.h.in Detect LG_SIZEOF_PTR depending on MSVC platform target 2016-02-20 10:50:24 -08:00
jemalloc_macros.h.in Fix -Wundef in _MSC_VER check. 2016-09-15 14:33:28 -07:00
jemalloc_mangle.sh Fix name mangling for stress tests. 2014-01-16 17:38:01 -08:00
jemalloc_protos.h.in Add JEMALLOC_CXX_THROW to the memalign() function prototype. 2015-08-26 13:47:20 -07:00
jemalloc_rename.sh Fix name mangling for stress tests. 2014-01-16 17:38:01 -08:00
jemalloc_typedefs.h.in Update extent hook function prototype comments. 2016-09-29 09:49:19 -07:00
jemalloc.sh Remove extraneous ';' on closing 'extern "C"' 2015-07-16 11:37:19 +01:00