Hi thanks for your reply,
the puzzling question that rocks my mind is why should they terminate the
stack by subtracting 64 with the stack pointer(r1)
addi r1,r11,__stackstart_pt@[EMAIL PROTECTED]
r1,r11,__stackstart_pt@[EMAIL PROTECTED]
r0,r0,0
stwu r0,-64(r1)
1. first two lines of code have defined the stack pointer(r1)
2. third lines has cleared register r0.
3. r1 is the stack pointer(sp) and sp is already initialised by first
two lines. and in the fourth line, they carry out this operation on
stack pointer "stwu r0,-64(r1)" Instruction does the following.
=> Effective address(EA) r1-64
=> EA is stored in stack pointer(r1)
=> value at the effective address is cleared to zero.
Why should the stack pointer will now hold the address given by EA.?
Any guess?


|