2000-09-13 Will Cohen <wcohen@redhat.com>

* libc/machine/v850/setjmp.S (_setjmp): Save r1 rather than r0.
        Added return value 0.
        (_longjmp): Allow longjmp to return value of second argument
        passed to it.
This commit is contained in:
Jeff Johnston 2000-09-13 16:10:50 +00:00
parent ce779ff629
commit 242361df36
2 changed files with 15 additions and 3 deletions

View File

@ -1,3 +1,10 @@
2000-09-13 Will Cohen <wcohen@redhat.com>
* libc/machine/v850/setjmp.S (_setjmp): Save r1 rather than r0.
Added return value 0.
(_longjmp): Allow longjmp to return value of second argument
passed to it.
2000-09-06 Jeff Johnston <jjohnstn@redhat.com> 2000-09-06 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/sys/types.h (FD_ZERO): Remove call to bzero and * libc/include/sys/types.h (FD_ZERO): Remove call to bzero and

View File

@ -4,7 +4,7 @@
.align 1 .align 1
.global _setjmp .global _setjmp
_setjmp: _setjmp:
st.w r0,0[r6] st.w r1,0[r6]
st.w r3,4[r6] st.w r3,4[r6]
st.w r4,8[r6] st.w r4,8[r6]
st.w r20,12[r6] st.w r20,12[r6]
@ -19,11 +19,12 @@ _setjmp:
st.w r29,48[r6] st.w r29,48[r6]
st.w r30,52[r6] st.w r30,52[r6]
st.w r31,56[r6] st.w r31,56[r6]
mov r0, r10
jmp [r31] jmp [r31]
.global _longjmp .global _longjmp
_longjmp: _longjmp:
ld.w 0[r6],r0 ld.w 0[r6],r1
ld.w 4[r6],r3 ld.w 4[r6],r3
ld.w 8[r6],r4 ld.w 8[r6],r4
ld.w 12[r6],r20 ld.w 12[r6],r20
@ -38,5 +39,9 @@ _longjmp:
ld.w 48[r6],r29 ld.w 48[r6],r29
ld.w 52[r6],r30 ld.w 52[r6],r30
ld.w 56[r6],r31 ld.w 56[r6],r31
mov 1,r10 cmp r7, r0
jne 1f
mov 1,r7
1:
mov r7, r10
jmp [r31] jmp [r31]