* sysdeps/generic/dl-procinfo.h (_DL_HWCAP_COUNT): New.
	(_dl_string_hwcap): New, does nothing.

	* sysdeps/unix/sysv/linux/i386/dl-procinfo.h (_DL_HWCAP_COUNT):
	New.
	(_dl_procinfo): Use _DL_HWCAP_COUNT instead of a constant.
	(_dl_string_hwcap): New function, converts from string to hwcap
	encoding.
	* sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h (_DL_HWCAP_COUNT):
	New.
	(_dl_procinfo): Use _DL_HWCAP_COUNT instead of a constant.
	(_dl_string_hwcap): New function, converts from string to hwcap
	encoding.
	* sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.h (_DL_HWCAP_COUNT):
	New.
	(_dl_procinfo): Use _DL_HWCAP_COUNT instead of a constant.
	(_dl_string_hwcap): New function, converts from string to hwcap
	encoding.
This commit is contained in:
Andreas Jaeger 2000-05-05 15:33:39 +00:00
parent 621d9092d7
commit 0b6301682b
5 changed files with 75 additions and 7 deletions

View File

@ -2,6 +2,25 @@
* misc/tst-tsearch.c (main): Correct type for initstate argument.
* sysdeps/generic/dl-procinfo.h (_DL_HWCAP_COUNT): New.
(_dl_string_hwcap): New, does nothing.
* sysdeps/unix/sysv/linux/i386/dl-procinfo.h (_DL_HWCAP_COUNT):
New.
(_dl_procinfo): Use _DL_HWCAP_COUNT instead of a constant.
(_dl_string_hwcap): New function, converts from string to hwcap
encoding.
* sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h (_DL_HWCAP_COUNT):
New.
(_dl_procinfo): Use _DL_HWCAP_COUNT instead of a constant.
(_dl_string_hwcap): New function, converts from string to hwcap
encoding.
* sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.h (_DL_HWCAP_COUNT):
New.
(_dl_procinfo): Use _DL_HWCAP_COUNT instead of a constant.
(_dl_string_hwcap): New function, converts from string to hwcap
encoding.
2000-05-05 Ulrich Drepper <drepper@redhat.com>
* elf/Makefile (distribute): Add dl-lookupcfg.h.

View File

@ -1,5 +1,5 @@
/* Stub version of processor capability information handling macros.
Copyright (C) 1998 Free Software Foundation, Inc.
Copyright (C) 1998, 2000 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
@ -30,4 +30,9 @@
/* By default there is no important hardware capability. */
#define HWCAP_IMPORTANT (0)
/* We don't have any hardware capabilities. */
#define _DL_HWCAP_COUNT 0
#define _dl_string_hwcap(str) (-1)
#endif /* dl-procinfo.h */

View File

@ -1,5 +1,5 @@
/* Linux/i386 version of processor capability information handling macros.
Copyright (C) 1998, 1999 Free Software Foundation, Inc.
Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
@ -30,6 +30,7 @@ static const char x86_cap_flags[][7] =
"pat", "pse36", "18", "19", "20", "21", "22", "mmx",
"osfxsr", "25", "26", "27", "28", "29", "30", "amd3d"
};
#define _DL_HWCAP_COUNT 32
static inline int
__attribute__ ((unused))
@ -41,7 +42,7 @@ _dl_procinfo (int word)
_dl_sysdep_message ("AT_HWCAP: ", NULL);
for (i = 0; i < 32; ++i)
for (i = 0; i < _DL_HWCAP_COUNT; ++i)
if (word & (1 << i))
_dl_sysdep_message (" ", x86_cap_flags[i], NULL);
@ -83,4 +84,18 @@ enum
HWCAP_IMPORTANT = (HWCAP_I386_MMX)
};
static inline int
__attribute__ ((unused))
_dl_string_hwcap (const char *str)
{
int i;
for (i = 0; i < _DL_HWCAP_COUNT; i++)
{
if (strcmp (str, x86_cap_flags[i]) == 0)
return i;
}
return -1;
};
#endif /* dl-procinfo.h */

View File

@ -1,5 +1,5 @@
/* Linux/sparc32 version of processor capability information handling macros.
Copyright (C) 1999 Free Software Foundation, Inc.
Copyright (C) 1999, 2000 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Jakub Jelinek <jj@ultra.linux.cz>, 1999.
@ -27,6 +27,7 @@ static const char sparc32_cap_flags[][7] =
{
"flush", "stbar", "swap", "muldiv", "v9"
};
#define _DL_HWCAP_COUNT 5
static inline int
__attribute__ ((unused))
@ -36,7 +37,7 @@ _dl_procinfo (int word)
_dl_sysdep_message ("AT_HWCAP: ", NULL);
for (i = 0; i < 5; ++i)
for (i = 0; i < _DL_HWCAP_COUNT; ++i)
if (word & (1 << i))
_dl_sysdep_message (" ", sparc32_cap_flags[i], NULL);
@ -52,6 +53,19 @@ _dl_hwcap_string (int idx)
return sparc32_cap_flags[idx];
};
static inline int
__attribute__ ((unused))
_dl_string_hwcap (const char *str)
{
int i;
for (i = 0; i < _DL_HWCAP_COUNT; i++)
{
if (strcmp (str, sparc32_cap_flags [i]) == 0)
return i;
}
return -1;
};
#define HWCAP_IMPORTANT (HWCAP_SPARC_V9)
#endif /* dl-procinfo.h */

View File

@ -1,5 +1,5 @@
/* Linux/sparc64 version of processor capability information handling macros.
Copyright (C) 1999 Free Software Foundation, Inc.
Copyright (C) 1999, 2000 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Jakub Jelinek <jj@ultra.linux.cz>, 1999.
@ -27,6 +27,7 @@ static const char sparc64_cap_flags[][7] =
{
"flush", "stbar", "swap", "muldiv", "v9"
};
#define _DL_HWCAP_COUNT 5
static inline int
__attribute__ ((unused))
@ -36,7 +37,7 @@ _dl_procinfo (int word)
_dl_sysdep_message ("AT_HWCAP: ", NULL);
for (i = 0; i < 5; ++i)
for (i = 0; i < _DL_HWCAP_COUNT; ++i)
if (word & (1 << i))
_dl_sysdep_message (" ", sparc64_cap_flags[i], NULL);
@ -52,6 +53,20 @@ _dl_hwcap_string (int idx)
return sparc64_cap_flags[idx];
};
static inline int
__attribute__ ((unused))
_dl_string_hwcap (const char *str)
{
int i;
for (i = 0; i < _DL_HWCAP_COUNT; i++)
{
if (strcmp (str, sparc64_cap_flags [i]) == 0)
return i;
}
return -1;
};
#define HWCAP_IMPORTANT (0)
#endif /* dl-procinfo.h */