#
# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
# Common Development and Distribution License (the "License").
# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
# or http://www.opensolaris.org/os/licensing.
# See the License for the specific language governing permissions
# and limitations under the License.
#
# When distributing Covered Code, include this CDDL HEADER in each
# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
# If applicable, add the following below this CDDL HEADER, with the
# fields enclosed by brackets "[]" replaced with your own identifying
# information: Portions Copyright [yyyy] [name of copyright owner]
#
# CDDL HEADER END
#
$mapfile_version 2
# Kludge alert: SHA1 is used to identify SPARC-T4 platforms. The T4 optimized
# memmove/memcpy routines in sun4v-hwcap3 do not use sha1 instructions. Since
# the symbol capability platform names are not available for sun4v (CA_SUNW_PLAT
# is set to "sun4v" on all sun4v platforms), there is no clean mechanism to load
# processor specific capabilities. The SHA1 hwcap was arbitrarily chosen from the
# set of new SPARC-T4 hwcaps to identify SPARC-T4 platforms, since SHA1 is currently
# only set for SPARC-T4 platforms. Future derivative processor platforms that set
# SHA1 will also load the sun4v-hwcap3 optimized routines. Until a proper mechanism
# is implemented, these future platforms will need to define a new sun4v-hwcap if they
# need to override the sun4v-hwcap3 routines.
# Once that mechanism is implemented, one should also use it in
# usr/src/common/crypto/arcfour/sun4v/arcfour_crypt_sun4v.c
CAPABILITY sun4v-hwcap3 {
MACHINE = sun4v;
HW += SHA1;
};
SYMBOL_SCOPE {
global:
__align_cpy_1;
_memcpy;
_memmove;
_memset;
memcpy;
memmove;
memset;
local:
*;
};