[PATCH] Force unwind frame with user-defined personality.
Jonathan Roelofs
jonathan at codesourcery.com
Tue Jan 20 06:56:47 PST 2015
================
Comment at: src/Unwind/UnwindLevel1-gcc-ext.c:103
@@ +102,3 @@
+#if LIBCXXABI_ARM_EHABI
+static inline uint32_t readPREL31(const uint32_t *data) {
+ uint32_t base = (uintptr_t) data;
----------------
would be nice to re-use signExtendPrel31 instead.
================
Comment at: src/Unwind/UnwindLevel1-gcc-ext.c:148
@@ +147,3 @@
+ // location or availability of the unwind opcodes in the generic model,
+ // we have to use an undocumented API of personality functions.
+
----------------
which part specifically are you calling out as undocumented here? (would be useful info in the comment)
================
Comment at: src/Unwind/UnwindLevel1-gcc-ext.c:165
@@ +164,3 @@
+ const _Unwind_State _US_FORCE_UNWIND = 8u;
+ if (pr(_US_FORCE_UNWIND, &ex, context) != _URC_CONTINUE_UNWIND) {
+ return _URC_END_OF_STACK;
----------------
I think you want _US_VIRTUAL_UNWIND_FRAME | _US_FORCE_UNWIND here.
http://reviews.llvm.org/D7032
EMAIL PREFERENCES
http://reviews.llvm.org/settings/panel/emailpreferences/
More information about the cfe-commits
mailing list