<div dir="ltr">Hi Jason,<div><br></div><div>Attached patch adds 64bit eh_frame section support.</div><div><br></div><div>In practice, 64bit eh_frame is not used even for x86_64 binaries. The main reason is in eh_frame we almost always use pc-relative addressing, so addresses are within 32bits and gcc just sticks to 32bit eh_frame.</div>
<div><br></div><div>I generated 64bit eh_frame for Android Java runtime and unwind successfully in gdb, and in lldb with this patch.</div><div><br></div><div>Also, I double checked with <a href="https://sourceware.org/git/?p=gdb.git;a=blob;f=gdb/dwarf2-frame.c;hb=master">gdb source code</a>(decode_frame_entry_1) and <a href="http://git.savannah.gnu.org/gitweb/?p=libunwind.git;a=blob;f=src/dwarf/Gfde.c;hb=HEAD">libunwind source code</a>(parse_cie & <span style="color:rgb(0,0,0);font-family:monospace;font-size:12px;white-space:pre">dwarf_extract_proc_info_from_fde</span>) to make sure my understanding is correct.</div>
<div><br></div><div>Thank you.</div><div><div><br></div>-- <br><div dir="ltr">Best Regards, Tong Shen</div>
</div></div>