diff options
author | Eric Andersen <andersen@codepoet.org> | 2004-07-15 07:34:00 +0000 |
---|---|---|
committer | Eric Andersen <andersen@codepoet.org> | 2004-07-15 07:34:00 +0000 |
commit | 71150804d1ac8ed2f7b9c6d3025fd415c58b129e (patch) | |
tree | aab8c892a813847614070f73e711178cd3c9ec74 /libc/sysdeps/linux/h8300/__longjmp.S | |
parent | 255fbb6abcef56c5f8c36383d49a902686f258f5 (diff) |
h8300 updates from Yoshinori Sato
Diffstat (limited to 'libc/sysdeps/linux/h8300/__longjmp.S')
-rw-r--r-- | libc/sysdeps/linux/h8300/__longjmp.S | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/libc/sysdeps/linux/h8300/__longjmp.S b/libc/sysdeps/linux/h8300/__longjmp.S new file mode 100644 index 000000000..2233644d0 --- /dev/null +++ b/libc/sysdeps/linux/h8300/__longjmp.S @@ -0,0 +1,26 @@ +#define _ASM +#define _SETJMP_H +#include <bits/setjmp.h> + +#ifdef __H8300S__ + .h8300s +#else + .h8300h +#endif + .text + +.global ___longjmp + +___longjmp: + mov.l er1,er1 + bne 1f + sub.l er1,er1 + inc.l #1,er1 +1: + mov.l @er0+,er4 + mov.l @er0+,er5 + mov.l @er0+,er6 + mov.l @er0+,sp + mov.l @er0+,er3 ; return PC + adds #4,sp ; adjust return stack + jmp @er3 |