hjl / source-git / glibc

Forked from source-git/glibc 3 years ago
Clone

Blame sysdeps/x86/dl-procruntime.c

Packit 6c4009
/* Data for processor runtime information.  x86 version.
Packit 6c4009
   Copyright (C) 2018 Free Software Foundation, Inc.
Packit 6c4009
   This file is part of the GNU C Library.
Packit 6c4009
Packit 6c4009
   The GNU C Library is free software; you can redistribute it and/or
Packit 6c4009
   modify it under the terms of the GNU Lesser General Public
Packit 6c4009
   License as published by the Free Software Foundation; either
Packit 6c4009
   version 2.1 of the License, or (at your option) any later version.
Packit 6c4009
Packit 6c4009
   The GNU C Library is distributed in the hope that it will be useful,
Packit 6c4009
   but WITHOUT ANY WARRANTY; without even the implied warranty of
Packit 6c4009
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Packit 6c4009
   Lesser General Public License for more details.
Packit 6c4009
Packit 6c4009
   You should have received a copy of the GNU Lesser General Public
Packit 6c4009
   License along with the GNU C Library; if not, see
Packit 6c4009
   <http://www.gnu.org/licenses/>.  */
Packit 6c4009
Packit 6c4009
/* This information must be kept in sync with the _DL_HWCAP_COUNT,
Packit 6c4009
   HWCAP_PLATFORMS_START and HWCAP_PLATFORMS_COUNT definitions in
Packit 6c4009
   dl-hwcap.h.
Packit 6c4009
Packit 6c4009
   If anything should be added here check whether the size of each string
Packit 6c4009
   is still ok with the given array size.
Packit 6c4009
Packit 6c4009
   All the #ifdefs in the definitions are quite irritating but
Packit 6c4009
   necessary if we want to avoid duplicating the information.  There
Packit 6c4009
   are three different modes:
Packit 6c4009
Packit 6c4009
   - PROCINFO_DECL is defined.  This means we are only interested in
Packit 6c4009
     declarations.
Packit 6c4009
Packit 6c4009
   - PROCINFO_DECL is not defined:
Packit 6c4009
Packit 6c4009
     + if SHARED is defined the file is included in an array
Packit 6c4009
       initializer.  The .element = { ... } syntax is needed.
Packit 6c4009
Packit 6c4009
     + if SHARED is not defined a normal array initialization is
Packit 6c4009
       needed.
Packit 6c4009
  */
Packit 6c4009
Packit 6c4009
#ifndef PROCINFO_CLASS
Packit 6c4009
# define PROCINFO_CLASS
Packit 6c4009
#endif
Packit 6c4009
Packit 6c4009
#if !IS_IN (ldconfig)
Packit 6c4009
# if !defined PROCINFO_DECL && defined SHARED
Packit 6c4009
  ._dl_x86_feature_1
Packit 6c4009
# else
85cee3
PROCINFO_CLASS unsigned int _dl_x86_feature_1
85cee3
# endif
85cee3
# ifndef PROCINFO_DECL
85cee3
= 0
85cee3
# endif
85cee3
# if !defined SHARED || defined PROCINFO_DECL
85cee3
;
85cee3
# else
85cee3
,
85cee3
# endif
85cee3
85cee3
# if !defined PROCINFO_DECL && defined SHARED
85cee3
  ._dl_x86_feature_control
85cee3
# else
85cee3
PROCINFO_CLASS struct dl_x86_feature_control _dl_x86_feature_control
85cee3
# endif
85cee3
# ifndef PROCINFO_DECL
85cee3
= {
85cee3
    .ibt = cet_elf_property,
85cee3
    .shstk = cet_elf_property
85cee3
  }
Packit 6c4009
# endif
Packit 6c4009
# if !defined SHARED || defined PROCINFO_DECL
Packit 6c4009
;
Packit 6c4009
# else
Packit 6c4009
,
Packit 6c4009
# endif
Packit 6c4009
#endif