The test is on 32bit x86 Linux, with g++
4.6.3.
So basically I use a IDA pro script to recover the .gcc_excpt_table
and .eh_frame
sections from binary compiled from C++
language.
Basically I want to reuse the dumped information of these two exception handling tables in a new assembly code disassembled from this C++
ELF binary.
I put these two tables into the assembly code produced by disassembler, solving all intra-module address issue (basically translate concrete addresses into symbols) and re-compile it like this:
g++ final.s
However, there are three symbols that can not be found or I just don't know how to define it.
_Unwind_Resume
are undefined__FRAME_END__
are undefined- It seems that
eh_frame
requires the beginning address of.plt
table, but is there anyway to get the beginning address of.plt
table during compiling? I know I can use the symbol_GLOBAL_OFFSET_TABLE_
to represent the beginning address of table.got.plt
, but after a quick search, I just don't know whether there is a similar symbol representing.plt
table.