sytpb 发表于 2016-06-23 16:54

ASM 调用返回

本帖最后由 sytpb 于 2016-06-23 17:58 编辑

C函数调用与返回

mov ip,sp
stmfd sp!,{fp,ip,lr,pc}
sub fp,ip,#4


.....


sub sp,fp,#12
ldmfd sp,{fp,sp,pc}


这里ip没有保存? 不会破坏原来ip ?

新手!!请教


chengxta 发表于 2016-08-12 17:11

ip(r12)就是子程序调用时用来暂存sp的,不需要保存,执行"ldmfd sp,{fp,sp,pc}"后fp->fp, ip->sp, lr->pc,程序跳转到子程序调用前的返回地址;
页: [1]
查看完整版本: ASM 调用返回