'\" te .\" Copyright (c) 2008, 2015, Oracle and/or its affiliates.All rights reserved. .TH isalist 5 "2015 年 1 月 27 日" "SunOS 5.11" "标准、环境和宏" .SH 名称 isalist \- Solaris 软件可识别的本机指令集 .SH 描述 .sp .LP 本文列出了由 \fBisalist\fR(1) 以及 \fBSI_ISALIST\fR 命令(属于 \fBsysinfo\fR(2))返回的可能的指令集名称。 .sp .LP 该列表按某种方式对指令集系列进行了排序,即排在后面的名称通常比前面的名称的运行速度快;请注意,这与 \fBisalist\fR(1) 和 \fBsysinfo\fR(2) 列出的顺序相反。在下面的值列表中,带编号的条目通常表示性能渐增;带字母的条目表示互斥或无法排序。 .sp .LP 此功能已过时,可能会在以后的 Solaris 版本中删除。以下列表不会影响现代处理器已创建的所有扩展。要了解处理指令集扩展的更好方法,请参见 \fBgetisax\fR(2)。 .SS "SPARC 平台" .sp .LP 在适当时,指出了 Oracle Solaris Studio C 编译器带有给定值的 \fB-xarch\fR 选项的对应项。其他编译器可能也有类似的选项。 .sp .ne 2 .mk .na \fB1a. \fBsparc\fR\fR .ad .RS 27n .rt 指示 SPARC V8 指令集,其定义详见\fI\fR《SPARC Architecture Manual》,第 8 版,Prentice-Hall, Inc. 出版,1992 年。在特定系统上,某些指令(如整数相乘和相除、FSMULD 及对四元操作数执行的所有浮点运算)可由内核模拟。 .RE .sp .ne 2 .mk .na \fB1b. \fBsparcv7\fR\fR .ad .RS 27n .rt 与 sparc 相同。此选项与使用 Oracle Solaris Studio C 编译器的 –xarch=v7 选项生成的代码相对应。 .RE .sp .ne 2 .mk .na \fB2. \fBsparcv8–fsmuld\fR\fR .ad .RS 27n .rt 与 sparc 类似,但必须在硬件中执行整数相乘和相除。此选项与使用 Oracle Solaris Studio C 编译器的 –xarch=v8a 选项生成的代码相对应。 .RE .sp .ne 2 .mk .na \fB3. \fBsparcv8\fR\fR .ad .RS 27n .rt 与 sparcv8–fsmuld 类似,但也必须在硬件中执行 FSMULD。此选项与使用 Oracle Solaris Studio C 编译器的 –xarch=v8 选项生成的代码相对应。 .RE .sp .ne 2 .mk .na \fB4. \fBsparcv8plus\fR\fR .ad .RS 27n .rt 指示 SPARC V8 指令集以及 SPARC V9 指令集(其定义详见\fI\fR《SPARC Architecture Manual》,第 9 版,Prentice-Hall 出版,1994 年)中可按照 V8+ 技术规范\fI\fR使用的那些指令。此选项与使用 Oracle Solaris Studio C 编译器的 –xarch=v8plus 选项生成的代码相对应。 .RE .sp .ne 2 .mk .na \fB5a. \fBsparcv8plus+vis\fR\fR .ad .RS 27n .rt 与 sparcv8plus 类似,但新增了可按照 \fI\fRV8+ 技术规范使用的那些 UltraSPARC I 可视化指令。此选项与使用 Oracle Solaris Studio C 编译器的 –xarch=v8plusa 选项生成的代码相对应。 .RE .sp .ne 2 .mk .na \fB5b. \fBsparcv8plus+fmuladd\fR\fR .ad .RS 27n .rt 与 sparcv8plus 类似,但新增了 Fujitsu SPARC64 浮点相乘-相加和相乘-相减指令。 .RE .sp .ne 2 .mk .na \fB6. \fBsparcv9\fR\fR .ad .RS 27n .rt 指示 SPARC V9 指令集,其定义详见\fI\fR《SPARC Architecture Manual》,第 9 版,Prentice-Hall 出版,1994 年。 .RE .sp .ne 2 .mk .na \fB7a. \fBsparcv9+vis\fR\fR .ad .RS 27n .rt 与 sparcv9 类似,但新增了 UltraSPARC I 可视化指令。 .RE .sp .ne 2 .mk .na \fB7b. \fBsparcv9+vis2\fR\fR .ad .RS 27n .rt 与 sparcv9 类似,但新增了 UltraSPARC III 可视化指令。 .RE .sp .ne 2 .mk .na \fB7c. \fBsparcv9+fmuladd\fR\fR .ad .RS 27n .rt 与 sparcv9 类似,但新增了 Fujitsu SPARC64 浮点相乘-相加和相乘-相减指令。 .RE .SS "x86 平台" .sp .ne 2 .mk .na \fB1.\fBi386\fR\fR .ad .RS 22n .rt Intel 80386 指令集,其说明详见\fI\fR《i386 Microprocessor Programmer's Reference Manual》。 .RE .sp .ne 2 .mk .na \fB2. \fBi486\fR\fR .ad .RS 22n .rt Intel 80486 指令集,其说明详见\fI\fR《i486 Microprocessor Programmer's Reference Manual》。(实际上,这包括 i386 以及 CMPXCHG、BSWAP 和 XADD 指令。) .RE .sp .ne 2 .mk .na \fB3. \fBPentium\fR\fR .ad .RS 22n .rt Intel Pentium 指令集,其说明详见\fI\fR《iPentium Processor User's Manual》。(实际上,这包括 i486、CPU_ID 指令以及 CPU_ID 指令指明存在的所有功能。) .RE .sp .ne 2 .mk .na \fB4. \fBpentium+mmx\fR\fR .ad .RS 22n .rt 与 pentium 类似,包含保证存在的 MMX 指令。 .RE .sp .ne 2 .mk .na \fB5. \fBpentium_pro\fR\fR .ad .RS 22n .rt Intel PentiumPro 指令集,其说明详见\fI\fR《PentiumPro Family Developer's Manual》。(实际上,这包括 pentium 以及保证存在的 CMOVcc、FCMOVcc、FCOMI 和 RDPMC 指令。) .RE .sp .ne 2 .mk .na \fB6. \fBpentium_pro+mmx\fR\fR .ad .RS 22n .rt 与 pentium_pro 类似,包含保证存在的 MMX 指令。 .RE .sp .ne 2 .mk .na \fB7. \fBamd64\fR\fR .ad .RS 22n .rt AMD Opteron 指令集,其说明详见《\fIAMD64 Architecture Programmer's Manual\fR》。 .RE .SH 另请参见 .sp .LP \fBisalist\fR(1)、\fBgetisax\fR(2)、\fBsysinfo\fR(2) .sp .LP 有关 C 编译器的信息,请参见《Oracle Solaris Studio 12.3: C User's Guide》(《Oracle Solaris Studio 12.3:C 用户指南》)。