mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-24 10:22:41 +08:00
Update.
2000-08-24 Denis Joseph Barrow <djbarrow@de.ibm.com> * sysdeps/s390/fpu/fedisblxcpt.c: New file. * sysdeps/s390/fpu/feenablxcpt.c: New file. * sysdeps/s390/fpu/fegetexcept.c: New file. * sysdeps/s390/fpu/fenv_libc.h: Some reordering, new definition FPC_VALID_MASK.
This commit is contained in:
parent
3b526f89b5
commit
0067c4cffb
@ -1,3 +1,11 @@
|
||||
2000-08-24 Denis Joseph Barrow <djbarrow@de.ibm.com>
|
||||
|
||||
* sysdeps/s390/fpu/fedisblxcpt.c: New file.
|
||||
* sysdeps/s390/fpu/feenablxcpt.c: New file.
|
||||
* sysdeps/s390/fpu/fegetexcept.c: New file.
|
||||
* sysdeps/s390/fpu/fenv_libc.h: Some reordering, new definition
|
||||
FPC_VALID_MASK.
|
||||
|
||||
2000-08-24 Andreas Jaeger <aj@suse.de>
|
||||
|
||||
* malloc/Makefile (extra-objs): Add memusagestat.o.
|
||||
|
35
sysdeps/s390/fpu/fedisblxcpt.c
Normal file
35
sysdeps/s390/fpu/fedisblxcpt.c
Normal file
@ -0,0 +1,35 @@
|
||||
/* Disable floating-point exceptions.
|
||||
Copyright (C) 2000 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Denis Joseph Barrow (djbarrow@de.ibm.com).
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Library General Public License as
|
||||
published by the Free Software Foundation; either version 2 of the
|
||||
License, or (at your option) any later version.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Library General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Library General Public
|
||||
License along with the GNU C Library; see the file COPYING.LIB. If not,
|
||||
write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
Boston, MA 02111-1307, USA. */
|
||||
|
||||
#include <fenv_libc.h>
|
||||
#include <fpu_control.h>
|
||||
|
||||
int
|
||||
fedisableexcept (int excepts)
|
||||
{
|
||||
fexcept_t temp, old_exc, new_flags;
|
||||
|
||||
_FPU_GETCW (temp);
|
||||
old_exc = (temp & FPC_EXCEPTION_MASK) >> FPC_EXCEPTION_MASK_SHIFT;
|
||||
new_flags = (temp & (~((excepts & FE_ALL_EXCEPT) << FPC_EXCEPTION_MASK_SHIFT)));
|
||||
_FPU_SETCW (new_flags);
|
||||
|
||||
return old_exc;
|
||||
}
|
35
sysdeps/s390/fpu/feenablxcpt.c
Normal file
35
sysdeps/s390/fpu/feenablxcpt.c
Normal file
@ -0,0 +1,35 @@
|
||||
/* Enable floating-point exceptions.
|
||||
Copyright (C) 2000 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Denis Joseph Barrow (djbarrow@de.ibm.com).
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Library General Public License as
|
||||
published by the Free Software Foundation; either version 2 of the
|
||||
License, or (at your option) any later version.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Library General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Library General Public
|
||||
License along with the GNU C Library; see the file COPYING.LIB. If not,
|
||||
write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
Boston, MA 02111-1307, USA. */
|
||||
|
||||
#include <fenv_libc.h>
|
||||
#include <fpu_control.h>
|
||||
|
||||
int
|
||||
feenableexcept (int excepts)
|
||||
{
|
||||
fexcept_t temp, old_exc, new_flags;
|
||||
|
||||
_FPU_GETCW (temp);
|
||||
old_exc = (temp & FPC_EXCEPTION_MASK) >> FPC_EXCEPTION_MASK_SHIFT;
|
||||
new_flags = (temp | ((excepts & FE_ALL_EXCEPT) << FPC_EXCEPTION_MASK_SHIFT));
|
||||
_FPU_SETCW (new_flags);
|
||||
|
||||
return old_exc;
|
||||
}
|
31
sysdeps/s390/fpu/fegetexcept.c
Normal file
31
sysdeps/s390/fpu/fegetexcept.c
Normal file
@ -0,0 +1,31 @@
|
||||
/* Get enabled floating-point exceptions.
|
||||
Copyright (C) 2000 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Denis Joseph Barrow (djbarrow@de.ibm.com).
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Library General Public License as
|
||||
published by the Free Software Foundation; either version 2 of the
|
||||
License, or (at your option) any later version.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Library General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Library General Public
|
||||
License along with the GNU C Library; see the file COPYING.LIB. If not,
|
||||
write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
Boston, MA 02111-1307, USA. */
|
||||
|
||||
#include <fenv_libc.h>
|
||||
#include <fpu_control.h>
|
||||
|
||||
int
|
||||
fegetexcept (void)
|
||||
{
|
||||
fexcept_t exc;
|
||||
|
||||
_FPU_GETCW (exc);
|
||||
return ((exc & FPC_EXCEPTION_MASK) >> FPC_EXCEPTION_MASK_SHIFT);
|
||||
}
|
@ -22,16 +22,19 @@
|
||||
|
||||
#include <fenv.h>
|
||||
|
||||
/* Definitions from asm/s390-regs-common.h that are needed in th glibc. */
|
||||
/* Definitions from asm/s390-regs-common.h that are needed in glibc. */
|
||||
|
||||
|
||||
#define FPC_DXC_MASK 0x0000FF00
|
||||
#define FPC_EXCEPTION_MASK 0xF8000000
|
||||
#define FPC_FLAGS_MASK 0x00F80000
|
||||
#define FPC_DXC_MASK 0x0000FF00
|
||||
#define FPC_RM_MASK 0x00000003
|
||||
#define FPC_VALID_MASK ((FPC_EXCEPTION_MASK|FPC_FLAGS_MASK| \
|
||||
FPC_DXC_MASK|FPC_RM_MASK))
|
||||
|
||||
#define FPC_EXCEPTION_MASK_SHIFT 24
|
||||
#define FPC_FLAGS_SHIFT 16
|
||||
#define FPC_DXC_SHIFT 8
|
||||
#define FPC_NOT_FPU_EXCEPTION 0x300
|
||||
#define FPC_EXCEPTION_MASK_SHIFT 24
|
||||
#define FPC_FLAGS_SHIFT 16
|
||||
#define FPC_DXC_SHIFT 8
|
||||
#define FPC_NOT_FPU_EXCEPTION 0x300
|
||||
|
||||
#endif /* _FENV_LIBC_H */
|
||||
|
Loading…
Reference in New Issue
Block a user