<DIV> </DIV>
<DIV> hi anyone,
<DIV>
<DIV>I have not understood some code in this file below: </DIV>
<DIV> <FONT color="#f00000">#ifndef CONFIG_ZBOOT_ROM<BR> /*<BR>* If we're running fully PIC === CONFIG_ZBOOT_ROM = n,<BR>* we need to fix up pointers into the BSS region.<BR> * r2 - BSS start<BR> * r3 - BSS end<BR> * sp - stack pointer<BR> */<BR> add r2, r2, r0<BR> add r3, r3, r0<BR> add sp, sp, r0</FONT></DIV>
<DIV><FONT color="#f00000"> /*<BR> * Relocate all entries in the GOT table.<BR> */<BR>1: ldr r1, [r6, #0] @ relocate entries in the GOT<BR>add r1, r1, r0 @ table. This fixes up the<BR> str r1, [r6], #4 @ C references.<BR> cmp r6, ip<BR> blo 1b<BR>#else</FONT></DIV>
<DIV><FONT color="#f00000"> /*<BR>* Relocate entries in the GOT table. We only relocate<BR>* the entries that are outside the (relocated) BSS region.<BR> */<BR>1: ldr r1, [r6, #0] @ relocate entries in the GOT<BR> cmp r1, r2 @ entry < bss_start ||<BR> cmphs r3, r1 @ _end < entry<BR>addlo r1, r1, r0 @ table. This fixes up the<BR> str r1, [r6], #4 @ C references.<BR> cmp r6, ip<BR> blo 1b<BR>#endif<BR></FONT>my question is:what is the different between the both <FONT color="#f00000">CONFIG_ZBOOT_ROM=y or n, </FONT><FONT color="#000000">and so led to the different tackles from the above code on relocation?</FONT></DIV>
<DIV><FONT color="#000000"> thanks ahead<BR></FONT></DIV></DIV></DIV><br><br><span title="neteasefooter"/><hr/>
<a href="http://allyes.nie.163.com/main/adfclick?db=afanie&bid=1254,611,23&cid=145,4,1&sid=1351&show=ignore&url=http://tx2.163.com/fab.html">09年新晋3D主流网游《天下贰》,网易六年亿资打造</a>
</span>