mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-24 02:03:35 +08:00
* sysdeps/mach/hurd/bits/libc-lock.h
(__libc_cleanup_push, __libc_cleanup_pop): New macros. 2003-08-01 Alfred M. Szmidt <ams@kemisten.nu> * sysdeps/i386/dl-procinfo.h: New file, contents taken from ... * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: ... here. #include_next dl-procinfo.h to get them. (_DL_HWCAP_COUNT): Moved to sysdeps/i386/dl-procinfo.h. (_DL_PLATFORMS_COUNT): Likewise. (_DL_FIRST_PLATFORM): Likewise. (_DL_HWCAP_PLATFORM): Likewise. (HWCAP_I386_FPU, HWCAP_I386_VME, HWCAP_I386_DE, HWCAP_I386_PSE, HWCAP_I386_TSC, HWCAP_I386_MSR, HWCAP_I386_PAE, HWCAP_I386_MCE, HWCAP_I386_CX8, HWCAP_I386_APIC, HWCAP_I386_SEP, HWCAP_I386_MTRR, HWCAP_I386_PGE, HWCAP_I386_MCA, HWCAP_I386_CMOV, HWCAP_I386_FCMOV, HWCAP_I386_MMX, HWCAP_I386_OSFXSR, HWCAP_I386_XMM, HWCAP_I386_XMM2, HWCAP_I386_AMD3D, HWCAP_IMPORTANT): Likewise. (_DL_PROCINFO_H_): Likewise. (_dl_hwcap_string, _dl_platform_string, _dl_string_hwcap): Likewise. (_dl_string_platform): Likewise. * sysdeps/unix/sysv/linux/i386/dl-procinfo.c: Moved to ... * sysdeps/i386/dl-procinfo.c: ... here, new file.
This commit is contained in:
parent
0070086564
commit
fca9d8e489
27
ChangeLog
27
ChangeLog
@ -1,3 +1,30 @@
|
||||
2003-08-07 Alfred M. Szmidt <ams@kemisten.nu>
|
||||
|
||||
* sysdeps/mach/hurd/bits/libc-lock.h
|
||||
(__libc_cleanup_push, __libc_cleanup_pop): New macros.
|
||||
|
||||
2003-08-01 Alfred M. Szmidt <ams@kemisten.nu>
|
||||
|
||||
* sysdeps/i386/dl-procinfo.h: New file, contents taken from ...
|
||||
* sysdeps/unix/sysv/linux/i386/dl-procinfo.h: ... here.
|
||||
#include_next dl-procinfo.h to get them.
|
||||
(_DL_HWCAP_COUNT): Moved to sysdeps/i386/dl-procinfo.h.
|
||||
(_DL_PLATFORMS_COUNT): Likewise.
|
||||
(_DL_FIRST_PLATFORM): Likewise.
|
||||
(_DL_HWCAP_PLATFORM): Likewise.
|
||||
(HWCAP_I386_FPU, HWCAP_I386_VME, HWCAP_I386_DE, HWCAP_I386_PSE,
|
||||
HWCAP_I386_TSC, HWCAP_I386_MSR, HWCAP_I386_PAE, HWCAP_I386_MCE,
|
||||
HWCAP_I386_CX8, HWCAP_I386_APIC, HWCAP_I386_SEP, HWCAP_I386_MTRR,
|
||||
HWCAP_I386_PGE, HWCAP_I386_MCA, HWCAP_I386_CMOV,
|
||||
HWCAP_I386_FCMOV, HWCAP_I386_MMX, HWCAP_I386_OSFXSR,
|
||||
HWCAP_I386_XMM, HWCAP_I386_XMM2, HWCAP_I386_AMD3D,
|
||||
HWCAP_IMPORTANT): Likewise.
|
||||
(_DL_PROCINFO_H_): Likewise.
|
||||
(_dl_hwcap_string, _dl_platform_string, _dl_string_hwcap): Likewise.
|
||||
(_dl_string_platform): Likewise.
|
||||
* sysdeps/unix/sysv/linux/i386/dl-procinfo.c: Moved to ...
|
||||
* sysdeps/i386/dl-procinfo.c: ... here, new file.
|
||||
|
||||
2003-09-24 Ulrich Drepper <drepper@redhat.com>
|
||||
|
||||
* sysdeps/unix/sysv/linux/dl-execstack.c
|
||||
|
@ -1,3 +1,8 @@
|
||||
2003-09-24 Roland McGrath <roland@redhat.com>
|
||||
|
||||
* allocatestack.c (__make_stacks_executable): Don't ignore return
|
||||
value from _dl_make_stack_executable.
|
||||
|
||||
2003-09-24 Ulrich Drepper <drepper@redhat.com>
|
||||
|
||||
* allocatestack.c (__make_stacks_executable): Also change
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* Data for Linux/i386 version of processor capability information.
|
||||
Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
|
||||
/* Data for i386 version of processor capability information.
|
||||
Copyright (C) 2001,2002,2003 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2001.
|
||||
|
110
sysdeps/i386/dl-procinfo.h
Normal file
110
sysdeps/i386/dl-procinfo.h
Normal file
@ -0,0 +1,110 @@
|
||||
/* i386 version of processor capability information handling macros.
|
||||
Copyright (C) 1998, 2000, 2003 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 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
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#ifndef _DL_PROCINFO_H
|
||||
#define _DL_PROCINFO_H 1
|
||||
#include <ldsodefs.h>
|
||||
|
||||
#define _DL_HWCAP_COUNT 32
|
||||
|
||||
#define _DL_PLATFORMS_COUNT 4
|
||||
|
||||
/* Start at 48 to reserve some space. */
|
||||
#define _DL_FIRST_PLATFORM 48
|
||||
/* Mask to filter out platforms. */
|
||||
#define _DL_HWCAP_PLATFORM (((1ULL << _DL_PLATFORMS_COUNT) - 1) \
|
||||
<< _DL_FIRST_PLATFORM)
|
||||
|
||||
enum
|
||||
{
|
||||
HWCAP_I386_FPU = 1 << 0,
|
||||
HWCAP_I386_VME = 1 << 1,
|
||||
HWCAP_I386_DE = 1 << 2,
|
||||
HWCAP_I386_PSE = 1 << 3,
|
||||
HWCAP_I386_TSC = 1 << 4,
|
||||
HWCAP_I386_MSR = 1 << 5,
|
||||
HWCAP_I386_PAE = 1 << 6,
|
||||
HWCAP_I386_MCE = 1 << 7,
|
||||
HWCAP_I386_CX8 = 1 << 8,
|
||||
HWCAP_I386_APIC = 1 << 9,
|
||||
HWCAP_I386_SEP = 1 << 11,
|
||||
HWCAP_I386_MTRR = 1 << 12,
|
||||
HWCAP_I386_PGE = 1 << 13,
|
||||
HWCAP_I386_MCA = 1 << 14,
|
||||
HWCAP_I386_CMOV = 1 << 15,
|
||||
HWCAP_I386_FCMOV = 1 << 16,
|
||||
HWCAP_I386_MMX = 1 << 23,
|
||||
HWCAP_I386_OSFXSR = 1 << 24,
|
||||
HWCAP_I386_XMM = 1 << 25,
|
||||
HWCAP_I386_XMM2 = 1 << 26,
|
||||
HWCAP_I386_AMD3D = 1 << 31,
|
||||
|
||||
/* XXX Which others to add here? */
|
||||
HWCAP_IMPORTANT = (HWCAP_I386_MMX)
|
||||
|
||||
};
|
||||
|
||||
/* We cannot provide a general printing function. */
|
||||
#define _dl_procinfo(word) -1
|
||||
|
||||
static inline const char *
|
||||
__attribute__ ((unused))
|
||||
_dl_hwcap_string (int idx)
|
||||
{
|
||||
return GL(dl_x86_cap_flags)[idx];
|
||||
};
|
||||
|
||||
static inline const char *
|
||||
__attribute__ ((unused))
|
||||
_dl_platform_string (int idx)
|
||||
{
|
||||
return GL(dl_x86_platforms)[idx - _DL_FIRST_PLATFORM];
|
||||
};
|
||||
|
||||
static inline int
|
||||
__attribute__ ((unused, always_inline))
|
||||
_dl_string_hwcap (const char *str)
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i = 0; i < _DL_HWCAP_COUNT; i++)
|
||||
{
|
||||
if (strcmp (str, GL(dl_x86_cap_flags)[i]) == 0)
|
||||
return i;
|
||||
}
|
||||
return -1;
|
||||
};
|
||||
|
||||
static inline int
|
||||
__attribute__ ((unused, always_inline))
|
||||
_dl_string_platform (const char *str)
|
||||
{
|
||||
int i;
|
||||
|
||||
if (str != NULL)
|
||||
for (i = 0; i < _DL_PLATFORMS_COUNT; ++i)
|
||||
{
|
||||
if (strcmp (str, GL(dl_x86_platforms)[i]) == 0)
|
||||
return _DL_FIRST_PLATFORM + i;
|
||||
}
|
||||
return -1;
|
||||
};
|
||||
|
||||
#endif /* dl-procinfo.h */
|
@ -159,6 +159,8 @@ typedef struct __libc_lock_recursive_opaque__ __libc_lock_recursive_t;
|
||||
if ((DOIT) && __save_FCT != 0) \
|
||||
(*__save_FCT)(__save_ARG); \
|
||||
|
||||
#define __libc_cleanup_push(fct, arg) __libc_cleanup_region_start (1, fct, arg)
|
||||
#define __libc_cleanup_pop(execute) __libc_cleanup_end (execute)
|
||||
|
||||
#if (_CTHREADS_ - 0)
|
||||
|
||||
|
@ -18,22 +18,11 @@
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#ifndef _DL_PROCINFO_H
|
||||
#define _DL_PROCINFO_H 1
|
||||
|
||||
#include_next <dl-procinfo.h>
|
||||
#include <ldsodefs.h>
|
||||
|
||||
#define _DL_HWCAP_COUNT 32
|
||||
|
||||
#define _DL_PLATFORMS_COUNT 4
|
||||
|
||||
/* Start at 48 to reserve some space. */
|
||||
#define _DL_FIRST_PLATFORM 48
|
||||
/* Mask to filter out platforms. */
|
||||
#define _DL_HWCAP_PLATFORM (((1ULL << _DL_PLATFORMS_COUNT) - 1) \
|
||||
<< _DL_FIRST_PLATFORM)
|
||||
|
||||
|
||||
#undef _dl_procinfo
|
||||
static inline int
|
||||
__attribute__ ((unused))
|
||||
_dl_procinfo (int word)
|
||||
@ -52,78 +41,3 @@ _dl_procinfo (int word)
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline const char *
|
||||
__attribute__ ((unused))
|
||||
_dl_hwcap_string (int idx)
|
||||
{
|
||||
return GL(dl_x86_cap_flags)[idx];
|
||||
};
|
||||
|
||||
static inline const char *
|
||||
__attribute__ ((unused))
|
||||
_dl_platform_string (int idx)
|
||||
{
|
||||
return GL(dl_x86_platforms)[idx - _DL_FIRST_PLATFORM];
|
||||
};
|
||||
|
||||
enum
|
||||
{
|
||||
HWCAP_I386_FPU = 1 << 0,
|
||||
HWCAP_I386_VME = 1 << 1,
|
||||
HWCAP_I386_DE = 1 << 2,
|
||||
HWCAP_I386_PSE = 1 << 3,
|
||||
HWCAP_I386_TSC = 1 << 4,
|
||||
HWCAP_I386_MSR = 1 << 5,
|
||||
HWCAP_I386_PAE = 1 << 6,
|
||||
HWCAP_I386_MCE = 1 << 7,
|
||||
HWCAP_I386_CX8 = 1 << 8,
|
||||
HWCAP_I386_APIC = 1 << 9,
|
||||
HWCAP_I386_SEP = 1 << 11,
|
||||
HWCAP_I386_MTRR = 1 << 12,
|
||||
HWCAP_I386_PGE = 1 << 13,
|
||||
HWCAP_I386_MCA = 1 << 14,
|
||||
HWCAP_I386_CMOV = 1 << 15,
|
||||
HWCAP_I386_FCMOV = 1 << 16,
|
||||
HWCAP_I386_MMX = 1 << 23,
|
||||
HWCAP_I386_OSFXSR = 1 << 24,
|
||||
HWCAP_I386_XMM = 1 << 25,
|
||||
HWCAP_I386_XMM2 = 1 << 26,
|
||||
HWCAP_I386_AMD3D = 1 << 31,
|
||||
|
||||
/* XXX Which others to add here? */
|
||||
HWCAP_IMPORTANT = (HWCAP_I386_MMX)
|
||||
|
||||
};
|
||||
|
||||
static inline int
|
||||
__attribute__ ((unused, always_inline))
|
||||
_dl_string_hwcap (const char *str)
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i = 0; i < _DL_HWCAP_COUNT; i++)
|
||||
{
|
||||
if (strcmp (str, GL(dl_x86_cap_flags)[i]) == 0)
|
||||
return i;
|
||||
}
|
||||
return -1;
|
||||
};
|
||||
|
||||
|
||||
static inline int
|
||||
__attribute__ ((unused, always_inline))
|
||||
_dl_string_platform (const char *str)
|
||||
{
|
||||
int i;
|
||||
|
||||
if (str != NULL)
|
||||
for (i = 0; i < _DL_PLATFORMS_COUNT; ++i)
|
||||
{
|
||||
if (strcmp (str, GL(dl_x86_platforms)[i]) == 0)
|
||||
return _DL_FIRST_PLATFORM + i;
|
||||
}
|
||||
return -1;
|
||||
};
|
||||
|
||||
#endif /* dl-procinfo.h */
|
||||
|
Loading…
Reference in New Issue
Block a user