• Home
  • History
  • Annotate
  • only in /external/libunwind/include/tdep-sh/
History log of /external/libunwind/include/tdep-sh/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
f622936d6c5239b3d5ccafdf38189cec8bca55c0 15-Apr-2014 Christopher Ferris <cferris@google.com> Make sure that all memory accesses are guarded.

This doesn't protect the fpreg reads completely. It's still possible to have
a bad address that has the first part in readable memory and the second part
in unreadable memory. Since none of the code android uses uses the fpreg
data, this should be okay.

Bug: 13946101

Change-Id: I9187b16d0427cbc8af6751cf0b8476ea2d1bfc38
f4a8df5f4f338f1a12c25213227e98b34b42447f 08-Mar-2014 Christopher Ferris <cferris@google.com> Fix maps caching for local processes.

It is possible for the map to change while running libunwind. For example,
if lots of threads are doing local unwinds at the same time. Allow the
cached map to regenerate when it detects this case.

Included in this change is a refactor of all of the os code so that it can
also be used to do caching. This is a prelude to being able to attempt to
push the code upstream.

Also, this moves the code back closer to the original upstream code.
Hopefully, this will allow me to upstream all of these changes.

Change-Id: Ia219fa61e16e36416133bc95b1dd2161bd5b8ff7
16b95a68caaa7e021209e2cd6a877ae1e558f740 23-Jan-2014 Christopher Ferris <cferris@google.com> Add speed-ups to libunwind.

Add caching of /proc/self/maps data structures.

Add caching of elf image maps attached to the maps data structure.

Add a set of new map api functions to handle creation/destruction of the
maps by external code.

Remove the creation of the maps data structure in the local address space

Change-Id: I0adae397d433fc3902f83a6f377f6889161937e5
7d46a21e0a2cb561e4cad57b101a7137e01023dc 14-Nov-2013 Christopher Ferris <cferris@google.com> For current process, check memory accesses.

When attempting to unwind the current process, the library simple reads and
writes to memory for memory accesses. Unfortunately, if an unwind winds up
with invalid data, then the process can segfault. Add a guard to all memory
accesses that verifies that reads/writes are valid before attempting them.

For now, this guard is a nop on all systems except linux systems.

Also, modify the adjust_ip function to use the access_mem function
so that all reads go through the right function.

Bug: 11652982
Change-Id: I9d1feacae585374f6bf1d899f8a006ec9ecb47c4
8d5b1aeeffb80515197fd7aeee0b3fbfac904ecd 16-Aug-2012 Tommi Rantala <tt.rantala@gmail.com> SuperH port

Add support for the 32bit SuperH architecture running Linux.
Specifically, support is added for SH4, and support for earlier SH
versions and to the 64bit SH5 are left out. This was tested in qemu with
a little-endian SH4 debian image & GCC 4.7 cross compiler.