Enable profiling / leak detection in FreeBSD

* Assumes procfs is mounted at /proc, cf.
  <http://www.freebsd.org/doc/en/articles/linux-users/procfs.html>
Consistently use debug lib(s) if present

Fixes a situation where nm uses the debug lib but
addr2line does not, which completely messes up the symbol
lookup.
Fix a crashing case where arena_chunk_init_hard returns NULL.

This happens when it fails to allocate a new chunk. Which
arena_chunk_alloc then passes into arena_avail_insert without any
checks. This then causes a crash when arena_avail_insert tries
to check chunk->ndirty.

This was introduced by the refactoring of arena_chunk_alloc
which previously would have returned NULL immediately after
calling chunk_alloc. This is now the return from
arena_chunk_init_hard so we need to check that return, and
not continue if it was NULL.
Merge pull request #60 from telemenar/dev

Fix a crashing case where arena_chunk_init_hard returns NULL.
Convert ALLOCM_ARENA() test to MALLOCX_ARENA() test.
Use arena dss prec instead of default for huge allocs.

Pass a dss_prec_t parameter to huge_{m,p,r}alloc instead of defaulting
to the chunk dss prec.
Consistently use debug lib(s) if present

Fixes a situation where nm uses the debug lib but
addr2line does not, which completely messes up the symbol
lookup.
Merge pull request #61 from mxw/huge-dss-prec

Use arena dss prec instead of default for huge allocs.
Merge pull request #59 from HarryWeppner/dev

FreeBSD memory (leak) profiling support
Fix p_test_fail()'s va_list abuse.

p_test_fail() was passing a va_list to two separate functions with the
expectation that no reset would occur.  Refactor p_test_fail()'s callers
to instead format two strings and pass them to p_test_fail().

Add a missing parameter to an assert_u64_eq() call, which the compiler
warned about after the assertion macro refactoring.
Fix message formatting errors uncovered by p_test_fail() refactoring.
Reduce maximum tested alignment.

Reduce maximum tested alignment from 2^29 to 2^25.  Some systems may not
have enough contiguous virtual memory to satisfy the larger alignment,
but the smaller alignment is still adequate to test multi-chunk
alignment.
Adapt hash tests to big-endian systems.

The hash code, which has MurmurHash3 at its core, generates different
output depending on system endianness, so adapt the expected output on
big-endian systems.  MurmurHash3 code also makes the assumption that
unaligned access is okay (not true on all systems), but jemalloc only
hashes data structures that have sufficient alignment to dodge this
limitation.
Enable big-endian mode for SFMT.

Add cpp logic to enable big-endian mode in SFMT.  This should fix SFMT
tests on e.g. MIPS and SPARC.
Keep frame pointers if using gcc frame intrinsics.

Specify -fno-omit-frame-pointer when using __builtin_frame_address() and
__builtin_return_address() for backtracing.  This fixes backtracing
failures on e.g. i686 for optimized builds.
Allow libgcc-based backtracing on x86.

Remove autoconf code that explicitly disabled libgcc-based backtracing
on i[3456]86.  There is no mention of which platforms/compilers
exhibited problems when this code was added, and chances are good that
any gcc toolchain issues have long since been fixed.
Document how dss precedence affects huge allocation.
Update ChangeLog for 3.6.0.
Add private namespace mangling for huge_dss_prec_get().
Merge branch 'dev'