Merge branch 'master' of git://github.com/illumos/illumos-gate
[unleashed.git] / usr / src / man / man5 / isalist.5
blob977f83dd86bc250b04f3194c97b8e288d8f4fcfc
1 '\" te
2 .\"  Copyright (c) 2008 Sun Microsystems, Inc. All Rights Reserved.
3 .\" 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.
4 .\" 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.
5 .\" 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]
6 .TH ISALIST 5 "Mar 20, 2008"
7 .SH NAME
8 isalist \- the native instruction sets known to Solaris software
9 .SH DESCRIPTION
10 .sp
11 .LP
12 The possible instruction set names returned by \fBisalist\fR(1) and the
13 \fBSI_ISALIST\fR command of \fBsysinfo\fR(2) are listed here.
14 .sp
15 .LP
16 The list is ordered within an instruction set family in the sense that later
17 names are generally faster then earlier names; note that this is in the reverse
18 order than listed by \fBisalist\fR(1) and \fBsysinfo\fR(2). In the following
19 list of values, numbered entries generally represent increasing performance;
20 lettered entries are either mutually exclusive or cannot be ordered.
21 .sp
22 .LP
23 This feature is obsolete and may be removed in a future version of Solaris. The
24 lists below do not reflect all the extensions that have been made by modern
25 processors. See \fBgetisax\fR(2) for a better way to handle instruction set
26 extensions.
27 .SS "SPARC Platforms"
28 .sp
29 .LP
30 Where appropriate, correspondence with a given value of the \fB-xarch\fR option
31 of Sun's C 4.0 compiler is indicated. Other compilers might have similar
32 options.
33 .sp
34 .ne 2
35 .na
36 \fB1a. \fBsparc\fR\fR
37 .ad
38 .RS 27n
39 Indicates the SPARC V8 instruction set, as defined in \fI\fR The SPARC
40 Architecture Manual, Version 8, Prentice-Hall, Inc., 1992. Some instructions
41 (such as integer multiply and divide, FSMULD, and all floating point operations
42 on quad operands) can be emulated by the kernel on certain systems.
43 .RE
45 .sp
46 .ne 2
47 .na
48 \fB1b. \fBsparcv7\fR\fR
49 .ad
50 .RS 27n
51 Same as sparc. This corresponds to code produced with the -xarch=v7 option of
52 Sun's C 4.0 compiler.
53 .RE
55 .sp
56 .ne 2
57 .na
58 \fB2. \fBsparcv8-fsmuld\fR\fR
59 .ad
60 .RS 27n
61 Like sparc, except that integer multiply and divide must be executed in
62 hardware. This corresponds to code produced with the -xarch=v8a option of Sun's
63 C 4.0 compiler.
64 .RE
66 .sp
67 .ne 2
68 .na
69 \fB3. \fBsparcv8\fR\fR
70 .ad
71 .RS 27n
72 Like sparcv8-fsmuld, except that FSMULD must also be executed in hardware. This
73 corresponds to code produced with the -xarch=v8 option of Sun's C 4.0 compiler.
74 .RE
76 .sp
77 .ne 2
78 .na
79 \fB4. \fBsparcv8plus\fR\fR
80 .ad
81 .RS 27n
82 Indicates the SPARC V8 instruction set plus those instructions in the SPARC V9
83 instruction set, as defined in \fI\fR The SPARC Architecture Manual, Version 9,
84 Prentice-Hall, 1994, that can be used according to \fI\fR The V8+ Technical
85 Specification. This corresponds to code produced with the -xarch=v8plus option
86 of Sun's C 4.0 compiler.
87 .RE
89 .sp
90 .ne 2
91 .na
92 \fB5a. \fBsparcv8plus+vis\fR\fR
93 .ad
94 .RS 27n
95 Like sparcv8plus, with the addition of those UltraSPARC I Visualization
96 Instructions that can be used according to \fI\fR The V8+ Technical
97 Specification. This corresponds to code produced with the -xarch=v8plusa option
98 of Sun's C 4.0 compiler.
99 .RE
102 .ne 2
104 \fB5b. \fBsparcv8plus+fmuladd\fR\fR
106 .RS 27n
107 Like sparcv8plus, with the addition of the Fujitsu SPARC64 floating
108 multiply-add and multiply-subtract instructions.
112 .ne 2
114 \fB6. \fBsparcv9\fR\fR
116 .RS 27n
117 Indicates the SPARC V9 instruction set, as defined in \fI\fR The SPARC
118 Architecture Manual, Version 9, Prentice-Hall, 1994.
122 .ne 2
124 \fB7a. \fBsparcv9+vis\fR\fR
126 .RS 27n
127 Like sparcv9, with the addition of the UltraSPARC I Visualization Instructions.
131 .ne 2
133 \fB7b. \fBsparcv9+vis2\fR\fR
135 .RS 27n
136 Like sparcv9, with the addition of the UltraSPARC III Visualization
137 Instructions.
141 .ne 2
143 \fB7c. \fBsparcv9+fmuladd\fR\fR
145 .RS 27n
146 Like sparcv9, with the addition of the Fujitsu SPARC64 floating multiply-add
147 and multiply-subtract instructions.
150 .SS "x86 Platforms"
152 .ne 2
154 \fB1. \fBi386\fR\fR
156 .RS 22n
157 The Intel 80386 instruction set, as described in \fI\fR The i386 Microprocessor
158 Programmer's Reference Manual.
162 .ne 2
164 \fB2. \fBi486\fR\fR
166 .RS 22n
167 The Intel 80486 instruction set, as described in \fI\fR The i486 Microprocessor
168 Programmer's Reference Manual. (This is effectively i386, plus the CMPXCHG,
169 BSWAP, and XADD instructions.)
173 .ne 2
175 \fB3. \fBpentium\fR\fR
177 .RS 22n
178 The Intel Pentium instruction set, as described in \fI\fR The Pentium Processor
179 User's Manual. (This is effectively i486, plus the CPU_ID instruction, and any
180 features that the CPU_ID instruction indicates are present.)
184 .ne 2
186 \fB4. \fBpentium+mmx\fR\fR
188 .RS 22n
189 Like pentium, with the MMX instructions guaranteed present.
193 .ne 2
195 \fB5. \fBpentium_pro\fR\fR
197 .RS 22n
198 The Intel PentiumPro instruction set, as described in \fI\fR The PentiumPro
199 Family Developer's Manual. (This is effectively pentium, with the CMOVcc,
200 FCMOVcc, FCOMI, and RDPMC instructions guaranteed present.)
204 .ne 2
206 \fB6. \fBpentium_pro+mmx\fR\fR
208 .RS 22n
209 Like pentium_pro, with the MMX instructions guaranteed present.
213 .ne 2
215 \fB7. \fBamd64\fR\fR
217 .RS 22n
218 The AMD Opteron instruction set, as described in the \fIAMD64 Architecture
219 Programmer's Manual\fR.
222 .SH SEE ALSO
225 \fBisalist\fR(1), \fBgetisax\fR(2), \fBsysinfo\fR(2)