10Sstevel@tonic-gate /* 20Sstevel@tonic-gate * CDDL HEADER START 30Sstevel@tonic-gate * 40Sstevel@tonic-gate * The contents of this file are subject to the terms of the 52801Shyw * Common Development and Distribution License (the "License"). 62801Shyw * You may not use this file except in compliance with the License. 70Sstevel@tonic-gate * 80Sstevel@tonic-gate * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 90Sstevel@tonic-gate * or http://www.opensolaris.org/os/licensing. 100Sstevel@tonic-gate * See the License for the specific language governing permissions 110Sstevel@tonic-gate * and limitations under the License. 120Sstevel@tonic-gate * 130Sstevel@tonic-gate * When distributing Covered Code, include this CDDL HEADER in each 140Sstevel@tonic-gate * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 150Sstevel@tonic-gate * If applicable, add the following below this CDDL HEADER, with the 160Sstevel@tonic-gate * fields enclosed by brackets "[]" replaced with your own identifying 170Sstevel@tonic-gate * information: Portions Copyright [yyyy] [name of copyright owner] 180Sstevel@tonic-gate * 190Sstevel@tonic-gate * CDDL HEADER END 200Sstevel@tonic-gate */ 210Sstevel@tonic-gate /* 229202SJason.Beloro@Sun.COM * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 230Sstevel@tonic-gate * Use is subject to license terms. 240Sstevel@tonic-gate */ 250Sstevel@tonic-gate 260Sstevel@tonic-gate #ifndef _SYS_AUXV_SPARC_H 270Sstevel@tonic-gate #define _SYS_AUXV_SPARC_H 280Sstevel@tonic-gate 290Sstevel@tonic-gate #ifdef __cplusplus 300Sstevel@tonic-gate extern "C" { 310Sstevel@tonic-gate #endif 320Sstevel@tonic-gate 330Sstevel@tonic-gate /* 340Sstevel@tonic-gate * Flags used to describe various instruction set extensions available 350Sstevel@tonic-gate * on different SPARC processors. 360Sstevel@tonic-gate * 377718SJason.Beloro@Sun.COM * [The first four are legacy descriptions.] 380Sstevel@tonic-gate */ 390Sstevel@tonic-gate #define AV_SPARC_MUL32 0x0001 /* 32x32-bit smul/umul is efficient */ 400Sstevel@tonic-gate #define AV_SPARC_DIV32 0x0002 /* 32x32-bit sdiv/udiv is efficient */ 410Sstevel@tonic-gate #define AV_SPARC_FSMULD 0x0004 /* fsmuld is efficient */ 420Sstevel@tonic-gate #define AV_SPARC_V8PLUS 0x0008 /* V9 instructions available to 32-bit apps */ 430Sstevel@tonic-gate #define AV_SPARC_POPC 0x0010 /* popc is efficient */ 440Sstevel@tonic-gate #define AV_SPARC_VIS 0x0020 /* VIS instruction set supported */ 450Sstevel@tonic-gate #define AV_SPARC_VIS2 0x0040 /* VIS2 instruction set supported */ 460Sstevel@tonic-gate #define AV_SPARC_ASI_BLK_INIT 0x0080 /* ASI_BLK_INIT_xxx ASI */ 472801Shyw #define AV_SPARC_FMAF 0x0100 /* Fused Multiply-Add */ 487718SJason.Beloro@Sun.COM #define AV_SPARC_VIS3 0x0400 /* VIS3 instruction set extensions */ 497718SJason.Beloro@Sun.COM #define AV_SPARC_HPC 0x0800 /* High Performance Computing insns */ 507718SJason.Beloro@Sun.COM #define AV_SPARC_RANDOM 0x1000 /* random instruction */ 517718SJason.Beloro@Sun.COM #define AV_SPARC_TRANS 0x2000 /* transactions supported */ 524435Smb158278 #define AV_SPARC_FJFMAU 0x4000 /* Fujitsu Unfused Multiply-Add */ 535037Sjl139090 #define AV_SPARC_IMA 0x8000 /* Integer Multiply-add */ 549202SJason.Beloro@Sun.COM #define AV_SPARC_ASI_CACHE_SPARING 0x10000 550Sstevel@tonic-gate 560Sstevel@tonic-gate #define FMT_AV_SPARC \ 575037Sjl139090 "\20" \ 589202SJason.Beloro@Sun.COM "\21cspare" \ 59*10271SJason.Beloro@Sun.COM "\20ima\17fjfmau\16trans\15random\14hpc\13vis3\12-\11fmaf" \ 604435Smb158278 "\10ASIBlkInit\7vis2\6vis\5popc\4v8plus\3fsmuld\2div32\1mul32" 610Sstevel@tonic-gate 620Sstevel@tonic-gate /* 630Sstevel@tonic-gate * compatibility defines: Obsolete 640Sstevel@tonic-gate */ 650Sstevel@tonic-gate #define AV_SPARC_HWMUL_32x32 AV_SPARC_MUL32 660Sstevel@tonic-gate #define AV_SPARC_HWDIV_32x32 AV_SPARC_DIV32 670Sstevel@tonic-gate #define AV_SPARC_HWFSMULD AV_SPARC_FSMULD 680Sstevel@tonic-gate 690Sstevel@tonic-gate #ifdef __cplusplus 700Sstevel@tonic-gate } 710Sstevel@tonic-gate #endif 720Sstevel@tonic-gate 730Sstevel@tonic-gate #endif /* !_SYS_AUXV_SPARC_H */ 74