1. 03 Apr, 2014 1 commit
    • Christopher Ferris's avatar
      Create an UnwindMapLocal object. · e2960910
      Christopher Ferris authored
      The way libunwind handles local unwinds is different from remote unwinds,
      so create a new map object to handle the differences.
      
      Add new test to verify the map data is being generated correctly.
      
      Add new tests to check for leaks.
      
      Refactor the BACK_LOGW code into a single header file.
      
      Change-Id: I01f3cbfc4b927646174ea1b614fa25d23b9b3427
      e2960910
  2. 28 Jan, 2014 1 commit
    • Christopher Ferris's avatar
      Re-enable libunwind for arm. · df290618
      Christopher Ferris authored
      Update to handle the new optimized way that libunwind works.
      
      In addition, a small refactor of the BacktraceMap code.
      
      A few new tests of for good measure.
      
      Change-Id: I2f9b4f5ad5a0dfe907b31febee76e4b9b94fb76f
      df290618
  3. 17 Jan, 2014 1 commit
    • Christopher Ferris's avatar
      Rewrite libbacktrace to be all C++. · 46756821
      Christopher Ferris authored
      This includes removing the map_info.c source and replacing it with the
      BacktraceMap class to handle all map related code.
      
      Change all callers of libbacktrace map functionality.
      
      Also modify the corkscrew thread code so that it doesn't need to build
      the map twice (once in the corkscrew format and once in the libbacktrace
      format).
      
      Change-Id: I32865a39f83a3dd6f958fc03c2759ba47d12382e
      46756821
  4. 08 Jan, 2014 1 commit
  5. 30 Oct, 2013 1 commit
    • Christopher Ferris's avatar
      More libbacktrace fixes. · 8ed46278
      Christopher Ferris authored
      Included in minor fix ups is the addition of a warning macro to replace
      all of the ALOGW calls.
      
      Fix a race where multiple threads could be attempting to unwind the threads
      of the current process at the same time.
      
      Bug: 8410085
      
      Change-Id: I02a65dc778dde690e5f95fc8ff069a32d0832fd1
      8ed46278
  6. 29 Oct, 2013 1 commit
    • Christopher Ferris's avatar
      Rewrite libbacktrace using C++. · 17e91d44
      Christopher Ferris authored
      The old code was essentially trying to be C++ in C and was awkward. This
      change makes it all objects with a thin layer that C code can use.
      
      There is a C++ backtrace object that is not very useful, this code will
      replace it.
      
      This change also includes moving the backtrace test to a gtest, and adding
      coverage of all major functionality.
      
      Bug: 8410085
      Change-Id: Iae0f1b09b3dd60395f71ed66010c1ea5cdd37841
      17e91d44