[PATCH] D58266: [MC] Sort DWARF FDEs by the associated CIE before emitting them.

Eli Friedman via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Feb 14 17:10:03 PST 2019


efriedma created this revision.
efriedma added reviewers: compnerd, t.p.northover, dblaikie.
Herald added subscribers: arichardson, javed.absar, aprantl, emaste.
Herald added a reviewer: espindola.
Herald added a reviewer: jfb.
Herald added a project: LLVM.

This isn't technically necessary according to the DWARF standard, but the Android libunwindstack rejects eh_frame sections where an FDE refers to a CIE other than the closest previous CIE.

I think I would consider this a bug in libunwindstack... as far as I can tell, the DWARF standard doesn't contain any requirement like this. And
I'm not sure we should be adding workarounds for specific unwind implementations.  But I have the patch anyway, so I'm posting it.

I'd appreciate it if someone from Google could contact the owners of libstackunwind to see if they have any opinion on this.


Repository:
  rL LLVM

https://reviews.llvm.org/D58266

Files:
  lib/MC/MCDwarf.cpp
  test/CodeGen/AArch64/arm64-big-endian-eh.ll
  test/MC/ELF/cfi-signal-frame.s
  test/MC/ELF/cfi.s

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D58266.186943.patch
Type: text/x-patch
Size: 27884 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190215/2d51c27d/attachment.bin>


More information about the llvm-commits mailing list