mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-10 07:10:06 +00:00
alpha: Tidy up ieee_get/set_fp_control syscalls
This commit is contained in:
parent
6360984bc3
commit
6ee732b7cd
@ -1,5 +1,10 @@
|
|||||||
2012-08-08 Richard Henderson <rth@redhat.com>
|
2012-08-08 Richard Henderson <rth@redhat.com>
|
||||||
|
|
||||||
|
* sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Use dwarf2
|
||||||
|
cfi markup for unwind. Adjust stack early so that the normal
|
||||||
|
syscall error path can be used.
|
||||||
|
* sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
|
||||||
|
|
||||||
* sysdeps/unix/sysv/linux/alpha/kernel-features.h
|
* sysdeps/unix/sysv/linux/alpha/kernel-features.h
|
||||||
(__ASSUME_STAT64_SYSCALL): Remove.
|
(__ASSUME_STAT64_SYSCALL): Remove.
|
||||||
* sysdeps/unix/sysv/linux/alpha/fxstat.c: Remove test
|
* sysdeps/unix/sysv/linux/alpha/fxstat.c: Remove test
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/* Copyright (C) 1993, 1995, 1996, 2003, 2004 Free Software Foundation, Inc.
|
/* Copyright (C) 1993-2012 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
Contributed by David Mosberger <davidm@azstarnet.com>, 1995.
|
Contributed by David Mosberger <davidm@azstarnet.com>, 1995.
|
||||||
|
|
||||||
@ -22,39 +22,29 @@
|
|||||||
|
|
||||||
.text
|
.text
|
||||||
|
|
||||||
LEAF(__ieee_get_fp_control, 16)
|
ENTRY(__ieee_get_fp_control)
|
||||||
#ifdef PROF
|
cfi_startproc
|
||||||
ldgp gp, 0(pv)
|
PSEUDO_PROLOGUE
|
||||||
|
|
||||||
lda sp, -16(sp)
|
lda sp, -16(sp)
|
||||||
.set noat
|
cfi_adjust_cfa_offset(16)
|
||||||
lda AT, _mcount
|
|
||||||
jsr AT, (AT), _mcount
|
|
||||||
.set at
|
|
||||||
.prologue 1
|
|
||||||
#elif defined PIC
|
|
||||||
lda sp, -16(sp)
|
|
||||||
.prologue 0
|
|
||||||
#else
|
|
||||||
ldgp gp, 0(pv)
|
|
||||||
lda sp, -16(sp)
|
|
||||||
.prologue 1
|
|
||||||
#endif
|
|
||||||
|
|
||||||
mov sp, a1
|
mov sp, a1
|
||||||
ldi a0, GSI_IEEE_FP_CONTROL
|
ldi a0, GSI_IEEE_FP_CONTROL
|
||||||
ldi v0, __NR_osf_getsysinfo
|
ldi v0, __NR_osf_getsysinfo
|
||||||
call_pal PAL_callsys
|
call_pal PAL_callsys
|
||||||
bne a3, $error
|
|
||||||
|
|
||||||
ldq v0, 0(sp)
|
ldq t0, 0(sp)
|
||||||
lda sp, 16(sp)
|
lda sp, 16(sp)
|
||||||
|
cfi_adjust_cfa_offset(-16)
|
||||||
|
|
||||||
|
bne a3, SYSCALL_ERROR_LABEL
|
||||||
|
|
||||||
|
mov t0, v0
|
||||||
ret
|
ret
|
||||||
|
|
||||||
$error:
|
PSEUDO_END(__ieee_get_fp_control)
|
||||||
lda sp, 16(sp)
|
cfi_endproc
|
||||||
SYSCALL_ERROR_HANDLER
|
|
||||||
|
|
||||||
END(__ieee_get_fp_control)
|
|
||||||
|
|
||||||
libc_hidden_def(__ieee_get_fp_control)
|
libc_hidden_def(__ieee_get_fp_control)
|
||||||
weak_alias (__ieee_get_fp_control, ieee_get_fp_control)
|
weak_alias (__ieee_get_fp_control, ieee_get_fp_control)
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
/* Copyright (C) 1993, 1995, 1996, 1997, 2003, 2004
|
/* Copyright (C) 1993-2012 Free Software Foundation, Inc.
|
||||||
Free Software Foundation, Inc.
|
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
Contributed by David Mosberger <davidm@azstarnet.com>, 1995.
|
Contributed by David Mosberger <davidm@azstarnet.com>, 1995.
|
||||||
|
|
||||||
@ -21,40 +20,27 @@
|
|||||||
#include "kernel_sysinfo.h"
|
#include "kernel_sysinfo.h"
|
||||||
|
|
||||||
|
|
||||||
LEAF(__ieee_set_fp_control, 16)
|
ENTRY(__ieee_set_fp_control)
|
||||||
#ifdef PROF
|
cfi_startproc
|
||||||
ldgp gp, 0(pv)
|
PSEUDO_PROLOGUE
|
||||||
lda sp, -16(sp)
|
|
||||||
.set noat
|
|
||||||
lda AT, _mcount
|
|
||||||
jsr AT, (AT), _mcount
|
|
||||||
.set at
|
|
||||||
.prologue 1
|
|
||||||
#elif defined PIC
|
|
||||||
lda sp, -16(sp)
|
|
||||||
.prologue 0
|
|
||||||
#else
|
|
||||||
ldgp gp, 0(pv)
|
|
||||||
lda sp, -16(sp)
|
|
||||||
.prologue 1
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
lda sp, -16(sp)
|
||||||
|
cfi_adjust_cfa_offset(16)
|
||||||
|
|
||||||
|
ldi v0, __NR_osf_setsysinfo
|
||||||
stq a0, 0(sp)
|
stq a0, 0(sp)
|
||||||
mov sp, a1
|
mov sp, a1
|
||||||
ldi a0, SSI_IEEE_FP_CONTROL
|
ldi a0, SSI_IEEE_FP_CONTROL
|
||||||
ldi v0, __NR_osf_setsysinfo
|
|
||||||
call_pal PAL_callsys
|
call_pal PAL_callsys
|
||||||
|
|
||||||
bne a3, $error
|
|
||||||
|
|
||||||
lda sp, 16(sp)
|
lda sp, 16(sp)
|
||||||
|
cfi_adjust_cfa_offset(-16)
|
||||||
|
|
||||||
|
bne a3, SYSCALL_ERROR_LABEL
|
||||||
ret
|
ret
|
||||||
|
|
||||||
$error:
|
PSEUDO_END(__ieee_set_fp_control)
|
||||||
lda sp, 16(sp)
|
cfi_endproc
|
||||||
SYSCALL_ERROR_HANDLER
|
|
||||||
|
|
||||||
END(__ieee_set_fp_control)
|
|
||||||
|
|
||||||
libc_hidden_def(__ieee_set_fp_control)
|
libc_hidden_def(__ieee_set_fp_control)
|
||||||
weak_alias (__ieee_set_fp_control, ieee_set_fp_control)
|
weak_alias (__ieee_set_fp_control, ieee_set_fp_control)
|
||||||
|
Loading…
Reference in New Issue
Block a user