diff options
author | Roland McGrath <roland@gnu.org> | 2006-02-25 01:57:49 +0000 |
---|---|---|
committer | Roland McGrath <roland@gnu.org> | 2006-02-25 01:57:49 +0000 |
commit | 2e636c3db77bbbbbd95f7756d860f51ef1588645 (patch) | |
tree | 80419fe90241bef9aea927137b25b9a3ed513783 | |
parent | 464dce57cc94ec32cb3b02462e99866750f6cefb (diff) | |
download | glibc-2e636c3db77bbbbbd95f7756d860f51ef1588645.tar.gz glibc-2e636c3db77bbbbbd95f7756d860f51ef1588645.tar.xz glibc-2e636c3db77bbbbbd95f7756d860f51ef1588645.zip |
* elf/elf.h (HWCAP_SPARC_BLKINIT): New macro.
* sysdeps/sparc/dl-procinfo.h (HWCAP_IMPORTANT): Add it. (_DL_HWCAP_COUNT): Increase to 7. * sysdeps/sparc/dl-procinfo.c (_dl_sparc_cap_flags): Add "v9v". From David S. Miller <davem@sunset.davemloft.net>.
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | elf/elf.h | 9 | ||||
-rw-r--r-- | sysdeps/sparc/dl-procinfo.c | 6 | ||||
-rw-r--r-- | sysdeps/sparc/dl-procinfo.h | 7 |
4 files changed, 17 insertions, 11 deletions
diff --git a/ChangeLog b/ChangeLog index ab2d56e955..825f76c8da 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,11 @@ 2006-02-24 Roland McGrath <roland@redhat.com> + * elf/elf.h (HWCAP_SPARC_BLKINIT): New macro. + * sysdeps/sparc/dl-procinfo.h (HWCAP_IMPORTANT): Add it. + (_DL_HWCAP_COUNT): Increase to 7. + * sysdeps/sparc/dl-procinfo.c (_dl_sparc_cap_flags): Add "v9v". + From David S. Miller <davem@sunset.davemloft.net>. + * sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.c: Moved to ... * sysdeps/sparc/dl-procinfo.c: ... here, new file. * sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.h: Moved to ... diff --git a/elf/elf.h b/elf/elf.h index c98bb5233d..344f252c0c 100644 --- a/elf/elf.h +++ b/elf/elf.h @@ -1,5 +1,5 @@ /* This file defines standard ELF types, structures, and macros. - Copyright (C) 1995-2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 1995-2003,2004,2005,2006 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 @@ -1250,14 +1250,15 @@ typedef struct #define DT_SPARC_REGISTER 0x70000001 #define DT_SPARC_NUM 2 -/* Bits present in AT_HWCAP, primarily for Sparc32. */ +/* Bits present in AT_HWCAP on SPARC. */ -#define HWCAP_SPARC_FLUSH 1 /* The cpu supports flush insn. */ +#define HWCAP_SPARC_FLUSH 1 /* The CPU supports flush insn. */ #define HWCAP_SPARC_STBAR 2 #define HWCAP_SPARC_SWAP 4 #define HWCAP_SPARC_MULDIV 8 -#define HWCAP_SPARC_V9 16 /* The cpu is v9, so v8plus is ok. */ +#define HWCAP_SPARC_V9 16 /* The CPU is v9, so v8plus is ok. */ #define HWCAP_SPARC_ULTRA3 32 +#define HWCAP_SPARC_BLKINIT 64 /* Sun4v with block-init/load-twin. */ /* MIPS R3000 specific definitions. */ diff --git a/sysdeps/sparc/dl-procinfo.c b/sysdeps/sparc/dl-procinfo.c index c8bb614936..71f76aae44 100644 --- a/sysdeps/sparc/dl-procinfo.c +++ b/sysdeps/sparc/dl-procinfo.c @@ -47,12 +47,10 @@ #if !defined PROCINFO_DECL && defined SHARED ._dl_sparc_cap_flags #else -PROCINFO_CLASS const char _dl_sparc_cap_flags[6][7] +PROCINFO_CLASS const char _dl_sparc_cap_flags[7][7] #endif #ifndef PROCINFO_DECL -= { - "flush", "stbar", "swap", "muldiv", "v9", "ultra3" - } + = { "flush", "stbar", "swap", "muldiv", "v9", "ultra3", "v9v" }; #endif #if !defined SHARED || defined PROCINFO_DECL ; diff --git a/sysdeps/sparc/dl-procinfo.h b/sysdeps/sparc/dl-procinfo.h index 004e5a905a..dde02b556c 100644 --- a/sysdeps/sparc/dl-procinfo.h +++ b/sysdeps/sparc/dl-procinfo.h @@ -24,7 +24,7 @@ #include <ldsodefs.h> -#define _DL_HWCAP_COUNT 6 +#define _DL_HWCAP_COUNT 7 static inline int __attribute__ ((unused)) @@ -64,8 +64,9 @@ _dl_string_hwcap (const char *str) }; #include <bits/wordsize.h> -#define HWCAP_IMPORTANT_V9 (__WORDSIZE == 64 ? 0 : HWCAP_SPARC_V9) -#define HWCAP_IMPORTANT (HWCAP_IMPORTANT_V9|HWCAP_SPARC_ULTRA3) +#define HWCAP_IMPORTANT_V9 (__WORDSIZE == 64 ? 0 : HWCAP_SPARC_V9) +#define HWCAP_IMPORTANT (HWCAP_IMPORTANT_V9 | HWCAP_SPARC_ULTRA3 \ + | HWCAP_SPARC_BLKINIT) /* There are no different platforms defined. */ #define _dl_platform_string(idx) "" |