This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: DT_REL vs DT_JMPREL
- To: "YU Tang" <squalls_tang at 263 dot net>
- Subject: Re: DT_REL vs DT_JMPREL
- From: Ian Lance Taylor <ian at zembu dot com>
- Date: 13 Feb 2001 09:47:49 -0800
- Cc: binutils at sources dot redhat dot com
- References: <3A8936DB.25114@mta3.263.net>
"YU Tang" <squalls_tang@263.net> writes:
> I found entry DT_REL reference to section .rel.got ,and DT_JMPREL
> refernce to section .rel.plt;but I still don't understand what's
> difference between them;
DT_REL, DT_RELSZ, and DT_RELENT describe all the relocations.
DT_JMPREL gives the address of the start of the jump table
relocations.
The dynamic linker generally does not have to compute jump table
relocations when a program starts. It does have to compute all
non-jump-table relocations. Typically the dynamic linker will compute
all the relocations between DT_REL and DT_JMPREL when the program
starts. The relocations after DT_JMPREL will be computed lazily as
needed.
See the ELF ABI.
Ian