首页 > 解决方案 > Xlc '-qthreaded' 编译器选项的 gcc 等效项是什么?

问题描述

我目前正在将我的编译器从 AIX XLC 编译器移植到 AIX 上的 GCC 编译器。

我想知道是否有可用于-qthread (XLC) 的 GCC 等效编译器选项。

标签: gccaixportingxlc

解决方案


-pthread-qthreaded是适用于 XL的用例的最接近的 GCC 选项;但是,它不等同-qthreaded于 IBM XL 的选项。

GCC 文档-pthread仅声明它设置宏(http://gcc.gnu.org/onlinedocs/gcc/Preprocessor-Options.html#index-pthread)并修改链接步骤(http://gcc.gnu.org /onlinedocs/gcc/Link-Options.html#index-pthread-1)。-qthreaded不会导致_THREAD_SAFE被定义为宏,也不会导致-lpthreads出现在链接步骤中。GCC-pthread更像 XL 的_r调用(它确实设置了宏并修改了链接步骤)。

这样做-qthreaded是禁用对多线程程序不安全的优化。看来,至少从历史上看,-fno-tree-loop-if-convert-stores至少部分是 GCC 等价于-qthreaded.


推荐阅读