Xlc '-qthreaded' 编译器选项的 gcc 等效项是啥?
Posted
技术标签:
【中文标题】Xlc \'-qthreaded\' 编译器选项的 gcc 等效项是啥?【英文标题】:What is the gcc equivilant for Xlc '-qthreaded' compiler option?Xlc '-qthreaded' 编译器选项的 gcc 等效项是什么? 【发布时间】:2019-07-30 07:59:50 【问题描述】:我目前正在将我的编译器从 AIX XLC 编译器移植到 AIX 上的 GCC 编译器。
我想知道-qthreaded (XLC) 是否有可用的 GCC 等效编译器选项。
【问题讨论】:
应该是-pthread
【参考方案1】:
-pthread
是最接近将 -qthreaded
应用于 XL 的用例的 GCC 选项;但是,它不等同于 IBM XL 的 -qthreaded
选项。
-pthread
的 GCC 文档仅声明它设置了宏 (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
至少部分是等同于-qthreaded
的 GCC。
【讨论】:
以上是关于Xlc '-qthreaded' 编译器选项的 gcc 等效项是啥?的主要内容,如果未能解决你的问题,请参考以下文章