diff options
author | Ulrich Drepper <drepper@redhat.com> | 1999-05-19 15:35:26 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 1999-05-19 15:35:26 +0000 |
commit | 1c25bcacbe58057d511fb5eae19a0af5d43a2b75 (patch) | |
tree | 0c7bd762a77adcc1d12824bb211f54633e66c175 /sysdeps/sparc/sparc64/fpu/bits/fenv.h | |
parent | 2acd8fcfc4b8c76f34a304087c7a539102eddb6b (diff) | |
download | glibc-1c25bcacbe58057d511fb5eae19a0af5d43a2b75.tar.gz glibc-1c25bcacbe58057d511fb5eae19a0af5d43a2b75.tar.xz glibc-1c25bcacbe58057d511fb5eae19a0af5d43a2b75.zip |
Update.
1999-05-19 Jakub Jelinek <jj@ultra.linux.cz> * sysdeps/generic/bits/elfclass.h: Version common to wordsize-32 and wordsize-64. * sysdeps/generic/bits/environments.h: Ditto. * sysdeps/generic/stdint.h: Ditto. * sysdeps/generic/inttypes.h: Ditto. * sysdeps/generic/bits/wordsize.h: New file. * stdlib/Makefile: Add bits/wordsize.h to headers. * sysdeps/sparc/sparc64/bits/wordsize.h: New file. * sysdeps/sparc/sparc64/fpu/bits/fenv.h: Allow the same exported headers to be used for 32bit and 64bit ABI compilations. * sysdeps/sparc/sparc64/fpu/fpu_control.h: Ditto. * sysdeps/unix/sysv/linux/sparc/sparc64/bits/setjmp.h: Ditto. * sysdeps/unix/sysv/linux/sparc/sparc64/bits/types.h: Ditto. * sysdeps/unix/sysv/linux/sparc/sparc64/bits/statfs.h: Ditto. * sysdeps/unix/sysv/linux/sparc/sparc64/sys/ucontext.h: Ditto. * sysdeps/wordsize-64/bits/elfclass.h: Remove. * sysdeps/wordsize-64/bits/environments.h: Remove. * sysdeps/wordsize-64/stdint.h: Remove. * sysdeps/wordsize-64/inttypes.h: Remove. * sysdeps/wordsize-64/bits/wordsize.h: New file. * sysdeps/wordsize-32/bits/elfclass.h: Remove. * sysdeps/wordsize-32/bits/environments.h: Remove. * sysdeps/wordsize-32/stdint.h: Remove. * sysdeps/wordsize-32/inttypes.h: Remove. * sysdeps/wordsize-32/bits/wordsize.h: New file. 1999-05-19 Jakub Jelinek <jj@ultra.linux.cz> * sysdeps/sparc/sparc64/memcpy.S (__align_cpy_4, __align_cpy_8, __align_cpy_16): New functions. (__align_cpy_2, __align_cpy_1): New aliases to memcpy. * sysdeps/sparc/sparc32/Versions: New file. * sysdeps/sparc/sparc64/Versions: New file. * sysdeps/sparc/Versions: Remove. 1999-05-19 Jakub Jelinek <jj@ultra.linux.cz> * sysdeps/unix/sysv/linux/configure.in: On sparc64-*-linux*, set slibdir to /lib64 if prefix is /usr, plus set libdir to ${exec_prefix}/lib64. * sysdeps/unix/sysv/linux/configure: Regenerated. * config.make.in: Propagate libdir settings from configure to the Makefiles. * shlib-versions: sparc64-*-linux* dynamic linker is /lib64/ld-linux.so.2.
Diffstat (limited to 'sysdeps/sparc/sparc64/fpu/bits/fenv.h')
-rw-r--r-- | sysdeps/sparc/sparc64/fpu/bits/fenv.h | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/sysdeps/sparc/sparc64/fpu/bits/fenv.h b/sysdeps/sparc/sparc64/fpu/bits/fenv.h index b864abdedf..af8ed65768 100644 --- a/sysdeps/sparc/sparc64/fpu/bits/fenv.h +++ b/sysdeps/sparc/sparc64/fpu/bits/fenv.h @@ -1,4 +1,4 @@ -/* Copyright (C) 1997, 1998 Free Software Foundation, Inc. +/* Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -20,6 +20,8 @@ # error "Never use <bits/fenv.h> directly; include <fenv.h> instead." #endif +#include <bits/wordsize.h> + /* Define bits representing the exception. We use the bit positions of the appropriate accrued exception bits from the FSR. */ @@ -57,11 +59,19 @@ enum #define __FE_ROUND_MASK (3U << 30) +#if __WORDSIZE == 64 /* Type representing exception flags. */ typedef unsigned long fexcept_t; /* Type representing floating-point environment. */ typedef unsigned long fenv_t; +#else +/* Type representing exception flags. */ +typedef unsigned int fexcept_t; + +/* Type representing floating-point environment. */ +typedef unsigned int fenv_t; +#endif /* If the default argument is used we use this value. */ #define FE_DFL_ENV ((fenv_t *) -1) @@ -72,5 +82,10 @@ typedef unsigned long fenv_t; #endif /* For internal use only: access the fp state register. */ +#if __WORDSIZE == 64 #define __fenv_stfsr(X) __asm__ ("stx %%fsr,%0" : "=m" (X)) #define __fenv_ldfsr(X) __asm__ __volatile__ ("ldx %0,%%fsr" : : "m" (X)) +#else +#define __fenv_stfsr(X) __asm__ ("st %%fsr,%0" : "=m" (X)) +#define __fenv_ldfsr(X) __asm__ __volatile__ ("ld %0,%%fsr" : : "m" (X)) +#endif |