Oracle® Developer Studio 12.5:C++ 用户指南

退出打印视图

更新时间: 2016 年 7 月
 
 

1.4 二进制兼容性验证

在 Oracle Solaris 系统上,以 Oracle Developer Studio 编译器编译的程序二进制文件都标有体系结构硬件标志(指示编译的二进制文件所采用的指令集)。运行时,会检查这些标记标志以验证该二进制文件是否可以在它尝试在上面执行的硬件上运行。

如果程序不包含这些体系结构硬件标志,或者如果平台没有启用适当的功能或指令集扩展,则运行此程序可能会导致段故障或错误结果,且不会显示任何显式警告消息。

但是,在 Oracle Linux 上,没有此类验证检查。在早期的硬件平台上运行由 Oracle Developer Studio 编译器编译的二进制对象会导致运行时故障;在 Oracle Linux 上,由用户负责在适当的硬件平台上部署这些二进制文件。

此警告还会扩展到采用 .il 内联汇编语言函数或 __asm() 汇编程序代码(使用 SSE、SSE2、SSE2a 和 SSE3 以及更新指令和扩展)的程序。