[U-Boot-Users] why the = will effect gd in board_init_f but do not effect in board_init_r
zhuzhenhua
zzh.hust at gmail.com
Wed Nov 23 02:18:28 CET 2005
in my disassemble file , i find the operation of k0 in board_init_f
but not find in board_init_r, why? is there any other toolchain to
compile u-boot for mips?
bfc008e8 <board_init_f>:
bfc008e8: 3c1c0001 lui gp,0x1
bfc008ec: 279cdef8 addiu gp,gp,-8456
bfc008f0: 0399e021 addu gp,gp,t9
bfc008f4: 27bdffa8 addiu sp,sp,-88
bfc008f8: afbc0010 sw gp,16(sp)
bfc008fc: 8f820124 lw v0,292(gp)
bfc00900: afb10044 sw s1,68(sp)
bfc00904: afbf0054 sw ra,84(sp)
bfc00908: afbc0050 sw gp,80(sp)
bfc0090c: afb3004c sw s3,76(sp)
bfc00910: afb20048 sw s2,72(sp)
bfc00914: afb00040 sw s0,64(sp)
bfc00918: 3c114040 lui s1,0x4040
bfc0091c: 02228821 addu s1,s1,v0
bfc00920: 27ba0018 addiu k0,sp,24
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
bfc00bb4 <board_init_r>:
bfc00bb4: 3c1c0001 lui gp,0x1
bfc00bb8: 279cdc2c addiu gp,gp,-9172
bfc00bbc: 0399e021 addu gp,gp,t9
bfc00bc0: 27bdffd8 addiu sp,sp,-40
bfc00bc4: afbc0010 sw gp,16(sp)
bfc00bc8: afb00018 sw s0,24(sp)
bfc00bcc: 00a08021 move s0,a1
bfc00bd0: 00802821 move a1,a0
bfc00bd4: 8f84000c lw a0,12(gp)
bfc00bd8: 00000000 nop
bfc00bdc: 2484c520 addiu a0,a0,-15072
bfc00be0: afbf0020 sw ra,32(sp)
bfc00be4: afbc001c sw gp,28(sp)
bfc00be8: 8f9901b0 lw t9,432(gp)
bfc00bec: 0320f809 jalr t9
bfc00bf0: 00000000 nop
bfc00bf4: 8fbc0010 lw gp,16(sp)
bfc00bf8: 8f84000c lw a0,12(gp)
bfc00bfc: 00000000 nop
bfc00c00: 2484c52c addiu a0,a0,-15060
bfc00c04: 8f990074 lw t9,116(gp)
bfc00c08: 0320f809 jalr t9
bfc00c0c: 00000000 nop
bfc00c10: 8fbc0010 lw gp,16(sp)
bfc00c14: 8f420004 lw v0,4(k0)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ this is gd->flags |= GD_FLG_RELOC;
but at this time k0 is still as in board_init_f,
bfc00c18: 3c034040 lui v1,0x4040
bfc00c1c: 00701821 addu v1,v1,s0
bfc00c20: 8f84000c lw a0,12(gp)
More information about the U-Boot
mailing list