.
[glibc/history.git] / sysdeps / powerpc / dl-procinfo.c
blob1c74c2a90569fd676996cd695ad793428a8213e5
1 /* Data for processor capability information. PowerPC version.
2 Copyright (C) 2005, 2006 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
15 You should have received a copy of the GNU Lesser General Public
16 License along with the GNU C Library; if not, write to the Free
17 Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
18 02111-1307 USA. */
20 /* This information must be kept in sync with the _DL_HWCAP_COUNT and
21 _DL_PLATFORM_COUNT definitions in procinfo.h.
23 If anything should be added here check whether the size of each string
24 is still ok with the given array size.
26 All the #ifdefs in the definitions are quite irritating but
27 necessary if we want to avoid duplicating the information. There
28 are three different modes:
30 - PROCINFO_DECL is defined. This means we are only interested in
31 declarations.
33 - PROCINFO_DECL is not defined:
35 + if SHARED is defined the file is included in an array
36 initializer. The .element = { ... } syntax is needed.
38 + if SHARED is not defined a normal array initialization is
39 needed.
42 #ifndef PROCINFO_CLASS
43 # define PROCINFO_CLASS
44 #endif
46 #if !defined PROCINFO_DECL && defined SHARED
47 ._dl_powerpc_cap_flags
48 #else
49 PROCINFO_CLASS const char _dl_powerpc_cap_flags[25][10]
50 #endif
51 #ifndef PROCINFO_DECL
52 = {
53 "vsx",
54 "arch_2_06", "power6x", "dfp", "pa6t",
55 "arch_2_05", "ic_snoop", "smt", "booke",
56 "cellbe", "power5+", "power5", "power4",
57 "notb", "efpdouble", "efpsingle", "spe",
58 "ucache", "4xxmac", "mmu", "fpu",
59 "altivec", "ppc601", "ppc64", "ppc32",
61 #endif
62 #if !defined SHARED || defined PROCINFO_DECL
64 #else
66 #endif
68 #if !defined PROCINFO_DECL && defined SHARED
69 ._dl_powerpc_platforms
70 #else
71 PROCINFO_CLASS const char _dl_powerpc_platforms[8][12]
72 #endif
73 #ifndef PROCINFO_DECL
74 = {
75 [PPC_PLATFORM_POWER4] = "power4",
76 [PPC_PLATFORM_PPC970] = "ppc970",
77 [PPC_PLATFORM_POWER5] = "power5",
78 [PPC_PLATFORM_POWER5_PLUS] = "power5+",
79 [PPC_PLATFORM_POWER6] = "power6",
80 [PPC_PLATFORM_CELL_BE] = "ppc-cell-be",
81 [PPC_PLATFORM_POWER6X] = "power6x",
82 [PPC_PLATFORM_POWER7] = "power7"
84 #endif
85 #if !defined SHARED || defined PROCINFO_DECL
87 #else
89 #endif
91 #undef PROCINFO_DECL
92 #undef PROCINFO_CLASS