📄 setjmp.s
字号:
# setjmp/longjmp for FR30. The jmpbuf looks like this:# # Register jmpbuf offset# R8 0x00# R9 0x04# R10 0x08# R11 0x0c# R12 0x10# R13 0x14# R14 (FP) 0x18# R15 (SP) 0x1c# RP 0x20 .macro save reg st \reg,@r4 add #4,r4.endm .macro restore reg ld @r4,\reg add #4,r4.endm .text .global setjmpsetjmp: save r8 save r9 save r10 save r11 save r12 save r13 save r14 save r15 mov RP,r5 st r5,@r4# Return 0 to caller. ldi:8 #0,r4 ret .global longjmplongjmp: restore r8 restore r9 restore r10 restore r11 restore r12 restore r13 restore r14 restore r15 ld @r4,r4 mov r4,RP# If caller attempted to return 0, return 1 instead. mov r5,r4 or r4,r4 bne 1f ldi:8 #1,r4 1: ret
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -