Asking help with (dwarf) exception hacking on mipsel
Michael Eager
eager@eagerm.com
Fri Oct 22 16:20:00 GMT 2010
Kertész Csaba wrote:
> I speak strictly from run-time: when the gcc tries to find the fde for
> a text segment, the __builtin_return_address() corresponds to the
> run-time (memory) address of a text segment, but the fdes contain the
> link-time addresses of the text segments in run-time.
>
> In other words when the binary_search_unencoded_fdes() function is
> called, its pc parameter is a desired run-time memory address of a
> text segment in the memory (0x2344eca7), but the
> ob->u.sort->array[i]->pc_begin items are link-time addresses between
> the range 0x400000-0x500000. Obviously, comparing link-time addresses
> with run-time addresses will never match. The relationship between
> address in the memory and during link-time:
>
> link-time address = (run-time) address in the memory - gp register value + _gp.
>
> Ok, so now the question is: why the fdes do not contain run-time
> addresses of the text segments in run-time?
Are relocations generated for the addresses in the FDEs?
--
Michael Eager eager@eagercon.com
1960 Park Blvd., Palo Alto, CA 94306 650-325-8077
More information about the Gcc-help
mailing list