做的是新版的uboot移植到s3c2440,首先上电的时候nandflash前4K的代码被自动搬运到内存,然后完成uboot的完整拷贝。现在拷贝成功,程序跳转到拷贝后的地址运行,也就是链接时的地址。现在问题是一旦调用链接地址位于前4K的函数,程序就会跑飞。
按理说跳转到拷贝后的地址运行后,调用函数是用的当前PC值偏移跳转,上电时被搬运的前4K不会对现在的代码区造成影响。并且拷贝的目标地址就是链接地址。
反汇编代码也检查过了,看不出问题所在,希望有大神能帮忙答疑解惑
此帖出自
Linux与安卓论坛
一周热门 更多>