This is an archive of the discontinued LLVM Phabricator instance.

libcxx: Switch to use __gnu_unwind_frame() for libunwind.
ClosedPublic

Authored by logan on May 24 2015, 10:36 AM.

Details

Summary

As a step to fix libunwind unw_step(), a new function
__gnu_unwind_frame() has been introduced to libunwind, and it is
required to use this function so that some libunwind internal data
structure can be updated properly.

Depends On: D9961

Diff Detail

Event Timeline

logan updated this revision to Diff 26385.May 24 2015, 10:36 AM
logan retitled this revision from to libcxx: Switch to use __gnu_unwind_frame() for libunwind..
logan updated this object.
logan edited the test plan for this revision. (Show Details)
logan added reviewers: asl, rengolin, danalbert, compnerd, joerg.
logan added a subscriber: Unknown Object (MLST).
rengolin edited edge metadata.May 24 2015, 11:36 AM

And I imagine that this will also fix the problem we had earlier with undefined __gnu_unwind_frame, right?

If that's so, this one also looks good to me.

Thanks for the work!

--renato

asl accepted this revision.May 25 2015, 9:56 PM
asl edited edge metadata.
This revision is now accepted and ready to land.May 25 2015, 9:56 PM
logan closed this revision.May 29 2015, 8:40 AM

Hi Anton and Renato,

Thanks for reviewing. Committed as rL238561.

logan added a comment.May 29 2015, 8:41 AM

And I imagine that this will also fix the problem we had earlier with undefined __gnu_unwind_frame, right?

I haven't encountered this problem by myself. But I believe this should fix your problem.