linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* why do we need reloc_offset ??
@ 2009-09-02  6:33 HongWoo Lee
  2009-09-03  2:19 ` Michael Ellerman
  0 siblings, 1 reply; 2+ messages in thread
From: HongWoo Lee @ 2009-09-02  6:33 UTC (permalink / raw)
  To: linuxppc-dev

[-- Attachment #1: Type: text/plain, Size: 1191 bytes --]

Hi everyone~

In ther linux kernel code, I found the reloc_offset.

{{{
// file : misc.S
/* Returns (address we are running at) - (address we were linked at)
 * for use before the text and data are mapped to KERNELBASE.
 */
_GLOBAL(reloc_offset)
}}}

I couldn't understand the comment saying "Returns (address we are running
at) - (address we were linked at)".
For now, I'm studying each instruction.

And below is best comment I can explain for each instruction.

_GLOBAL(reloc_offset)
        mflr    r0                // move from link register, save the
return address
        bl      1f                 // bl 1f
1:     mflr    r3                // move from link register, r3 is just
return address pointing itself
        LOAD_REG_IMMEDIATE(r4,1b)    // get the 1b address, r4 is the
address
        subf    r3,r4,r3        // r3 = r3 – r4
        mtlr    r0                // restore return address
        blr

After this, I still don't know why "r3-r4" is the offset.
And what does it mean ??

Please explain to me the reason why we need reloc_offset and the code.
Or let me know any helpful reference about this.

Thank in advance.

HongWoo.

[-- Attachment #2: Type: text/html, Size: 1324 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2009-09-03  2:19 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-09-02  6:33 why do we need reloc_offset ?? HongWoo Lee
2009-09-03  2:19 ` Michael Ellerman

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).