Don't use jmp macro to make sure the stack frame is released the very

instruction before the real jump out.
This commit is contained in:
Ulrich Drepper 1997-05-31 00:45:54 +00:00
parent 91650f79e3
commit 9aa1421fe0
3 changed files with 14 additions and 9 deletions

View File

@ -73,8 +73,9 @@ $ok: stq a0, __curbrk
/* What a horrible way to die. */
$err0: ldi v0, ENOMEM
$err1: addq sp, 8, sp
jmp zero, __syscall_error
$err1: lda pv, __syscall_error
addq sp, 8, sp
jmp zero, (pv), __syscall_error
END(__brk)

View File

@ -41,18 +41,20 @@ LEAF(__ieee_get_fp_control, 16)
ldi a0, GSI_IEEE_FP_CONTROL
ldi v0, __NR_osf_getsysinfo
call_pal PAL_callsys
bne a3, error
bne a3, $error
ldq v0, 0(sp)
lda sp, 16(sp)
ret
error: lda sp, 16(sp)
$error:
#ifndef PROF
br gp, 1f
1: ldgp gp, 0(gp)
#endif
jmp zero, __syscall_error
lda pv, __syscall_error
lda sp, 16(sp)
jmp zero, (pv), __syscall_error
END(__ieee_get_fp_control)

View File

@ -41,17 +41,19 @@ LEAF(__ieee_set_fp_control, 16)
ldi v0, __NR_osf_setsysinfo
call_pal PAL_callsys
lda sp, 16(sp)
bne a3, $error
bne a3, error
lda sp, 16(sp)
ret
error:
$error:
#ifndef PROF
br gp, 1f
1: ldgp gp, 0(gp)
#endif
jmp zero, __syscall_error
lda pv, __syscall_error
lda sp, 16(sp)
jmp zero, (pv), __syscall_error
END(__ieee_set_fp_control)