2.5-18.1
[glibc.git] / sysdeps / powerpc / dl-procinfo.c
bloba732e94fa836b51aeeeb7c87e9c661cef3cf7598
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[23][10]
50 #endif
51 #ifndef PROCINFO_DECL
52 = {
53 "power6x", "dfp", "pa6t",
54 "arch_2_05", "ic_snoop", "smt", "booke",
55 "cellbe", "power5+", "power5", "power4",
56 "notb", "efpdouble", "efpsingle", "spe",
57 "ucache", "4xxmac", "mmu", "fpu",
58 "altivec", "ppc601", "ppc64", "ppc32",
60 #endif
61 #if !defined SHARED || defined PROCINFO_DECL
63 #else
65 #endif
67 #if !defined PROCINFO_DECL && defined SHARED
68 ._dl_powerpc_platforms
69 #else
70 PROCINFO_CLASS const char _dl_powerpc_platforms[7][12]
71 #endif
72 #ifndef PROCINFO_DECL
73 = {
74 [PPC_PLATFORM_POWER4] = "power4",
75 [PPC_PLATFORM_PPC970] = "ppc970",
76 [PPC_PLATFORM_POWER5] = "power5",
77 [PPC_PLATFORM_POWER5_PLUS] = "power5+",
78 [PPC_PLATFORM_POWER6] = "power6",
79 [PPC_PLATFORM_CELL_BE] = "ppc-cell-be",
80 [PPC_PLATFORM_POWER6X] = "power6x"
82 #endif
83 #if !defined SHARED || defined PROCINFO_DECL
85 #else
87 #endif
89 #undef PROCINFO_DECL
90 #undef PROCINFO_CLASS