diff options
author | Alexandre Oliva <aoliva@redhat.com> | 2004-06-23 01:54:52 +0400 |
---|---|---|
committer | Alexandre Oliva <aoliva@redhat.com> | 2004-06-23 01:54:52 +0400 |
commit | 9a6831be867ffae990ecd111abafbffae6ff135c (patch) | |
tree | 53b3bc29a8cb9ab426762e50298c4386703e558e /newlib/libc/machine/h8300/setjmp.S | |
parent | c0508da25acd6cdfb19e25eead5906d37743a925 (diff) |
2003-07-02 Richard Sandiford <rsandifo@redhat.com>
* libc/machine/h8300/Makefile.am (lib_a_SOURCES): Add h8sx_strcpy.S.
* libc/machine/h8300/defines.h (LEN): New macro.
* libc/machine/h8300/memcpy.S: Add h8sx version.
* libc/machine/h8300/memset.S: Likewise.
* libc/machine/h8300/strcmp.S: Likewise.
* libc/machine/h8300/setjmp.S: Use h8sx move instructions.
* libc/machine/h8300/h8sx_strcpy.S: New file.
2003-06-30 Richard Sandiford <rsandifo@redhat.com>
* libc/include/machine/ieeefp.h: Extend __H8300S__ handling to
__H8300SX__.
* libc/include/machine/setjmp.h: Likewise.
* libc/include/sys/config.h: Likewise.
* libc/machine/h8300/defines.h: Likewise.
* libc/machine/h8300/setjmp.S: Likewise.
* libc/machine/h8300/strcmp.S: Likewise.
* libc/sys/h8300hms/close.S: Likewise.
* libc/sys/h8300hms/fstat.S: Likewise.
* libc/sys/h8300hms/lseek.S: Likewise.
* libc/sys/h8300hms/read.S: Likewise.
* libc/sys/h8300hms/write.S: Likewise.
* libc/sys/h8300hms/crt0.S: Likewise.
* libc/machine/h8300/setarch.h: Use .h8300sx or .h8300sxn if
__H8300SX__ is defined.
* libc/sys/h8300hms/setarch.h: Likewise.
Diffstat (limited to 'newlib/libc/machine/h8300/setjmp.S')
-rw-r--r-- | newlib/libc/machine/h8300/setjmp.S | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/newlib/libc/machine/h8300/setjmp.S b/newlib/libc/machine/h8300/setjmp.S index c6661a926..cb79e49b3 100644 --- a/newlib/libc/machine/h8300/setjmp.S +++ b/newlib/libc/machine/h8300/setjmp.S @@ -6,7 +6,14 @@ .align 2 .global _setjmp _setjmp: -#if defined(__H8300H__) || defined(__H8300S__) +#if defined(__H8300SX__) + mov.l er7,@er0+ + mov.l er6,@er0+ + mov.l er5,@er0+ + mov.l er4,@er0+ + mov.l @sp,@er0 + sub.l er0,er0 +#elif defined(__H8300H__) || defined(__H8300S__) mov.l er7,@er0 mov.l er6,@(4,er0) mov.l er5,@(8,er0) @@ -27,13 +34,17 @@ _setjmp: .global _longjmp _longjmp: -#if defined(__H8300H__) || defined (__H8300S__) +#if defined(__H8300H__) || defined (__H8300S__) || defined (__H8300SX__) mov.l @er0+,er7 mov.l @er0+,er6 mov.l @er0+,er5 mov.l @er0+,er4 +#if defined(__H8300SX__) + mov.l @er0,@sp +#else mov.l @er0,er2 mov.l er2,@sp +#endif #if (__INT_MAX__ <= 32767) mov.w r1,r0 #else |