This is the mail archive of the
libc-alpha@sources.redhat.com
mailing list for the glibc project.
[ams@kemisten.nu: [patch] make HWCAP_I386_stuff avaible for all i386 platforms]
- From: "Alfred M. Szmidt" <ams at kemisten dot nu>
- To: libc-alpha at sources dot redhat dot com, roland at gnu dot org
- Date: Tue, 01 Jul 2003 18:32:31 +0200
- Subject: [ams@kemisten.nu: [patch] make HWCAP_I386_stuff avaible for all i386 platforms]
Ping on this. Any tips on what todo (or more specifically not-todo :)
would be nice to get this into the tree. I might note that this works
both on GNU/Linux and GNU/Hurd.
Wishing that libc will once again compile...
------- Start of forwarded message -------
To: libc-alpha@sources.redhat.com
Subject: [patch] make HWCAP_I386_stuff avaible for all i386 platforms
From: "Alfred M. Szmidt" <ams@kemisten.nu>
Date: Thu, 26 Jun 2003 16:23:35 +0200
This moves all the HWCAP_I386 stuff to a more generic place. And
since CVS is stupid, the new file is attached.
2003-06-25 Alfred M. Szmidt <ams@kemisten.nu>
* sysdeps/unix/sysv/linux/i386/dl-procinfo.h: include_next
dl-procinfo.h
* sysdeps/unix/sysv/linux/i386/dl-procinfo.h (_DL_HWCAP_COUNT):
Removed.
(_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.
* sysdeps/i386/dl-procinfo.h: New file.
Index: sysdeps/unix/sysv/linux/i386/dl-procinfo.h
===================================================================
RCS file: /cvs/glibc/libc/sysdeps/unix/sysv/linux/i386/dl-procinfo.h,v
retrieving revision 1.15
diff -u -r1.15 dl-procinfo.h
- --- sysdeps/unix/sysv/linux/i386/dl-procinfo.h 13 Jun 2003 21:03:28 -0000 1.15
+++ sysdeps/unix/sysv/linux/i386/dl-procinfo.h 26 Jun 2003 14:19:07 -0000
@@ -18,22 +18,10 @@
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)
@@ -53,6 +41,7 @@
return 0;
}
+#undef _dl_hwcap_string
static inline const char *
__attribute__ ((unused))
_dl_hwcap_string (int idx)
@@ -60,6 +49,7 @@
return GL(dl_x86_cap_flags)[idx];
};
+#undef _dl_platform_string
static inline const char *
__attribute__ ((unused))
_dl_platform_string (int idx)
@@ -67,35 +57,7 @@
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)
- -
- -};
- -
+#undef _dl_string_hwcap
static inline int
__attribute__ ((unused, always_inline))
_dl_string_hwcap (const char *str)
@@ -110,7 +72,7 @@
return -1;
};
- -
+#undef _dl_string_platform
static inline int
__attribute__ ((unused, always_inline))
_dl_string_platform (const char *str)
@@ -125,5 +87,3 @@
}
return -1;
};
- -
- -#endif /* dl-procinfo.h */
===File /src-cvs/libc/sysdeps/i386/dl-procinfo.h============
/* FIXME: Stub 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
/* We cannot provide a general printing function. */
#define _dl_procinfo(word) -1
/* There are no hardware capabilities defined. */
#define _dl_hwcap_string(idx) ""
/* There are no different platforms defined. */
#define _dl_platform_string(idx) ""
#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)
};
#define _dl_string_hwcap(str) (-1)
#define _dl_string_platform(str) (-1)
#endif /* dl-procinfo.h */
============================================================
------- End of forwarded message -------