Blame libc-abis

Packit Service 82fcde
# Definition of features which introduce new libc ABI versions.  This
Packit Service 82fcde
# file is used to create a header file with definitions for the various
Packit Service 82fcde
# versions.  The static linker will encode in the EI_ABIVERSION field in
Packit Service 82fcde
# the e_ident array in the ELF program header the required ABI version.
Packit Service 82fcde
# This is not a bitmask.  The maximum ABI version required must be
Packit Service 82fcde
# encoded.
Packit Service 82fcde
#
Packit Service 82fcde
# Adding new features should always happen by appending new lines.  Never
Packit Service 82fcde
# add entries in the middle or where they seem "logical".  Once a version
Packit Service 82fcde
# is assigned to a feature it must not change again.  Since some features
Packit Service 82fcde
# are conditionally added this can only ever be done securely without much
Packit Service 82fcde
# risk is by adding at the end.
Packit Service 82fcde
#
Packit Service 82fcde
# The following lines have one of two formats:
Packit Service 82fcde
#
Packit Service 82fcde
#	SYMBOL
Packit Service 82fcde
# With just a symbol on the line this is the name of a feature which
Packit Service 82fcde
# is architecture independent.
Packit Service 82fcde
#
Packit Service 82fcde
#	SYMBOL	PLATFORM
Packit Service 82fcde
# Using this form architecture (and platform) dependent features can be
Packit Service 82fcde
# specified.  The PLATFORM name can use the wildcards available in
Packit Service 82fcde
# the Bourne shell's case expression.
Packit Service 82fcde
#
Packit Service 82fcde
# Note that the same symbol can be used using different platform triples.
Packit Service 82fcde
# They don't have to be in the same order relative to other entries.  This
Packit Service 82fcde
# can happen if the feature is implemented for different architectures
Packit Service 82fcde
# at different times.
Packit Service 82fcde
#
Packit Service 82fcde
# This file is parsed by a script which produces a header file containing
Packit Service 82fcde
# a single enum definition.  An extra symbol is added as entry zero to
Packit Service 82fcde
# specify the default ABI with number 0 and an artificial last entry is
Packit Service 82fcde
# added to allow computing the maximum ABI version for the platform.
Packit Service 82fcde
#
Packit Service 82fcde
# Feature Name	Configuration
Packit Service 82fcde
# ------------	-------------
Packit Service 82fcde
#
Packit Service 82fcde
# Unique symbol definitions for C++.
Packit Service 82fcde
# Architecture independent, all ELF targets (== all targets)
Packit Service 82fcde
UNIQUE
Packit Service 82fcde
#
Packit Service 82fcde
# Indirect PLT relocations.  Architecture dependent.
Packit Service 82fcde
IFUNC		x86_64-*-linux*
Packit Service 82fcde
IFUNC		i?86-*-linux*
Packit Service 82fcde
IFUNC		powerpc64-*-linux*
Packit Service 82fcde
IFUNC		powerpc-*-linux*
Packit Service 82fcde
IFUNC		sparc64-*-linux*
Packit Service 82fcde
IFUNC		sparc-*-linux*
Packit Service 82fcde
# Absolute (SHN_ABS) symbols working correctly.
Packit Service 82fcde
ABSOLUTE