说明:本系列文章为个人笔记,如有不正确之处,请参考官方相关文档,如果错误发现,我会尽量更新修改。另外,以下内容不保证对于所有版本的编译器都正确,编译器的实现也可能有一些变化之处,具体参考官方文档。
补充说明:
下面内容为一些基础知识的补充说明,以防止误解。
(1) OS支持
Intel编译器支持Win/Lin/Mac,在Win上除了Intel编译器自己的选项,也会兼容VS的选项和VS的扩展语法内容,同理,在Lin上兼容GCC选项和GNU扩展语法。这些内容不会在本系列文章中都涉及到。
(2) 选项区别
对于大部分选项,Intel编译器在Win上的格式为:/Qopt,那么对应于Lin上的选项是:-opt。禁用某一个选项的方式是/Qopt-和-opt-。本系列文章中大多数是以Win上的选项来分析,是为了避免重复这些选项。
(3) Intel的编译器、链接器等
在Win上,编译器为icl.exe,链接器为xilink.exe,VS的编译器为cl.exe,链接器为link.exe。本系列文章以Win上举例,如果是在Lin下测试,需要进行对应的更新。
在Lin上,C编译器为icc,C++编译器为icpc(但是也可以使用icc编译C++文件),链接器为xild,打包为xiar,其余工具类似命名。GNU的C编译器为gcc,C++编译器为g++,链接器为ld,打包为ar。
(4)关于第0部分(“基础”)
一个优化选项往往包含了很多的优化技术,每个优化选项可能会进行一些基本的优化的基础上,进行“独有的”优