Skip to content
  1. Mar 31, 2014
  2. Mar 30, 2014
  3. Mar 28, 2014
  4. Mar 26, 2014
    • Chris Pride's avatar
      Fix a crashing case where arena_chunk_init_hard returns NULL. · 20a8c78b
      Chris Pride authored
      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.
      20a8c78b
  5. Mar 18, 2014
  6. Feb 26, 2014
  7. Feb 25, 2014
    • Jason Evans's avatar
      Fix junk filling for mremap(2)-based huge reallocation. · 940fdfd5
      Jason Evans authored
      If mremap(2) is used for huge reallocation, physical pages are mapped to
      new virtual addresses rather than data being copied to new pages.  This
      bypasses the normal junk filling that would happen during allocation, so
      add junk filling that is specific to this case.
      940fdfd5
    • Jason Evans's avatar
      Add configure test to verify SSE2 code compiles. · cb657e31
      Jason Evans authored
      Make sure that emmintrin.h can be #include'd without causing a
      compilation error, rather than blindly defining HAVE_SSE2 based on
      architecture.  Attempts to force SSE2 compilation on a 32-bit Ubuntu
      13.10 system running as a VMware guest resulted in a no-win choice
      without any obvious explanation besides toolchain misconfiguration/bug:
      - Suffer compilation failure due to __MMX__, __SSE__, and __SSE2__ not
        being defined, even if -mmmx, -msse, and -msse2 are manually
        specified (note that they appear to be enabled by default).
      - Manually define __MMX__, __SSE__, and __SSE2__, and suffer compiler
        warnings that they are already automatically defined.  This results in
        successful compilation and execution, but the noise is intolerable.
      cb657e31
    • Jason Evans's avatar
      Break prof_accum into multiple compilation units. · ad47e899
      Jason Evans authored
      Break prof_accum into multiple compilation units, in order to thwart
      compiler optimizations such as inlining and tail call optimization that
      would alter backtraces.
      ad47e899
    • Jason Evans's avatar
      Add workaround for missing 'restrict' keyword. · 99b0fbbe
      Jason Evans authored
      Add a cpp #define that removes 'restrict' keyword usage unless the
      compiler definitely supports C99.  As written, 'restrict' is only
      enabled if the compiler supports the -std=gnu99 option (e.g. gcc and
      llvm).
      
      Reported by Tobias Hieta.
      99b0fbbe
  8. Feb 14, 2014
  9. Feb 13, 2014
  10. Jan 29, 2014
  11. Jan 22, 2014