[PATCH] D57001: [libunwind] Don't define unw_fpreg_t to uint64_t for __ARM_DWARF_EH__
Martin Storsjö via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Sun Jan 27 14:27:26 PST 2019
mstorsjo updated this revision to Diff 183776.
mstorsjo added a comment.
I had to update the signature of assembly functions which have got the concrete type of unw_fpreg_t in the mangled name. I chose to use void* for these functions, as I believe the same functions also are used for ARM EHABI, to avoid the need for different mangled versions of the assembly functions depending on exception handling mechanism.
I crafted a testcase which uses dwarf exceptions on arm, and this patch fixed restoring float registers in a case which previously was broken. So that confirms what the compiler warning tried to say.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D57001/new/
https://reviews.llvm.org/D57001
Files:
include/libunwind.h
src/Registers.hpp
src/UnwindRegistersRestore.S
src/UnwindRegistersSave.S
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D57001.183776.patch
Type: text/x-patch
Size: 4651 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20190127/960e5268/attachment.bin>
More information about the cfe-commits
mailing list