summaryrefslogtreecommitdiff
path: root/libunwindstack/include/unwindstack/RegsMips64.h
AgeCommit message (Collapse)Author
2022-04-20Use #pragma once header guard.Christopher Ferris
Move to using the #pragma once header guard instead of the #ifndef construct since it's cleaner. Test: Compiles. Change-Id: I0bd76b53cfc78df7465029ef34783f85651a9c74
2020-03-19Make GetPcAdjustment a free function.Peter Collingbourne
We're now using it in contexts that don't have all of the registers available, such as GWP-ASan and soon MTE, so it doesn't make sense to have it be a member function of Regs. Bug: 135772972 Change-Id: I18b104ea0adb78588d7e475d0624cefc701ba52c
2019-12-04Use elf offset in signal step check.Christopher Ferris
The function StepIfSignalHandler assumed that the rel_pc passed to it was actually an elf offset. A new version of clang created a libc.so that has a load bias, so tests unwinding through a signal handler would fail on arm. On other ABIs, there is unwind information that could be used instead, so the unwind still worked. The fix is to subtract the load bias from the rel_pc to get an elf offset to pass to the Register StepIfSignalHandler functions. Change all of the Register funtions to make it clear what the first parameter means. Add a unit test for this new code. Also, add an offline test for this case. Bug: 145683525 Test: Ran unit tests using the new clang and the old clang. Change-Id: I3e249653b79bcad6d3a56411a7911fde4888e9d6
2018-04-20libunwindstack: add Regs::Clone.Josh Gao
Add a way to copy a Regs object. Bug: http://b/77296294 Test: libunwindstack_test Change-Id: I28aff510aa3e1b677d5ae46dc3bfe7652817ce52
2018-03-16Always set the sp reg to the cfa for DWARF.Yabin Cui
There are a few places where it is assumed that this register is set to the cfa value when interpreting DWARF information. Add a testcase for unwinding art_quick_osr_stub on ARM. Bug: 73954823 Test: Ran libunwindstack/libbacktrace unit tests. Test: Random debuggerd -b of process on a hikey. Test: Ran the 137 art test on host. Change-Id: Ida6ccdc38c3cfeea6b57fe861a0cc127b150b790
2018-02-21Change the GetAdjustedRelPc to GetPcAdjustment.Christopher Ferris
This cleans up a bit of the Unwinder code to make it clear what's going on. Modify the offline unit tests to verify the pc and sp to make sure that those values get computed correctly. Test: Passes unit tests. Test: Passes 137-cfi art tests. Change-Id: I0787a1d77b8726d3defd08f31c7476f6798f8d0d
2017-12-11Add libunwindstack support for Mips and Mips64Douglas Leung
This patch requires v3.18 kernel or above, because v3.10 kernel has a bug (as of 8/1/2017) in the ptrace(GETREGSET) function for mips and mips64. Change-Id: I004c1fa190193eebe1c84440b366289122a6bd8a Signed-off-by: Douglas Leung <douglas.leung@mips.com> Signed-off-by: Dejan Jovicevic <dejan.jovicevic@mips.com>