On Thu, 2007-07-26 at 11:56 +1000, Stephen Rothwell wrote: > Hi Will, > > On Wed, 25 Jul 2007 11:55:31 -0500 Will Schmidt <[EMAIL PROTECTED]> wrote: > > > > > cmpwi 0,r24,0 /* Are we processor 0? */ > > > - beq .__start_initialization_iSeries /* Start up the first processor > > > */ > > > - mfspr r4,SPRN_CTRLF > > > + bne 1f > > > + b .__start_initialization_iSeries /* Start up the first processor > > > */ > > > +1: mfspr r4,SPRN_CTRLF > > > li r5,CTRL_RUNLATCH /* Turn off the run light */ > > > > This part isnt clicking for me.. > > How does changing a "beq" to a "bne" over a "b" fit into changing > > __start_initialization_iSeries static? > > Because I moved __start_initialization_iSeries into another section, it > ends up too far away for a conditional branch so something adds a jump > table to the .text section and changes this branch to be via that table. > Unfortunately, the jump table ends up at the start of the .text and ruins > our carefully laid out kernel image. By inverting the test I can turn > the branch into an unconditional one which has a larger possible offse > (effectively building the jump table manually).
Gotcha, thanks for the clarification. :-) -Will > > _______________________________________________ > Linuxppc-dev mailing list > Linuxppc-dev@ozlabs.org > https://ozlabs.org/mailman/listinfo/linuxppc-dev _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev