Sun Studio 12 Update 1:C++ 用户指南

A.2.64 –O

现在,-O 宏扩展到 -xO3 而不是 -xO2

这种特殊变化会提高运行时性能。但是,对于依赖于被自动视为 volatile 的所有变量的程序,-xO3 可能不适用。可能做出此假定的典型程序包括设备驱动程序,以及实现其自己的同步基元的较旧的多线程应用程序。解决方法是用 -xO2 而不是 -O 进行编译。