[PATCH] libunwind: Fix unw_step() for ARM EHABI.
Logan Chien
tzuhsiang.chien at gmail.com
Sun May 24 10:34:32 PDT 2015
Hi asl, rengolin, danalbert, compnerd,
This commit fixes the unw_step() for ARM EHABI. However, this commit
also changes the implementation details for ARM EHABI.
The first change is that the personality function should call
__gnu_unwind_frame() for default (or de facto) frame unwinding based on
the ARM-defined unwind opcode. The function __gnu_unwind_frame() will
in turn calls unw_step() which actually unwinds the frame.
The second change is that the implementation _Unwind_Backtrace() should
no longer calls unw_step() to unwind the frame; since according to ARM
EHABI, the personality function should unwind the frame for us.
Special thanks to Anton for helpful suggestion on the initial version of
this patch.
http://reviews.llvm.org/D9961
Files:
src/Unwind-EHABI.cpp
src/UnwindCursor.hpp
src/UnwindLevel1-gcc-ext.c
test/libunwind_01.pass.cpp
test/libunwind_02.pass.cpp
EMAIL PREFERENCES
http://reviews.llvm.org/settings/panel/emailpreferences/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D9961.26384.patch
Type: text/x-patch
Size: 12493 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20150524/2e2df3a5/attachment.bin>
More information about the cfe-commits
mailing list