【发布时间】:2017-09-16 10:17:38
【问题描述】:
我们正在通过bad code generation 在 PowerPC 平台上使用 IBM XL C/C++ 在-O3 遇到源文件。它的表面是一个挂起,看起来一个特定的循环没有被打破。
该问题仅在 XL C/C++ 下出现。我们的测试制度表明源文件没有未定义的行为、内存错误和其他勘误。对于源文件,我们也不会收到来自编译器的 strict/nostrict 警告。
我们希望在-O2 而不是-O3 编译源文件。我们想在源文件中添加工具,如编译指示,以便编译器可以适当地保护它。该仪器允许其他人连接其他构建系统,如 Cmake 和 Autotools,并且事情将为他们“正常工作”。 (必要的信息在源代码而不是我们的 makefile 中可用)。
编译器的 IBM 手册位于 IBM XL C/C++ for AIX, V13.1,但该死的,如果我能找到该选项。
与#pragma GCC optimize 等效的IBM XL C/C++ 是什么?我们如何检测源代码以告诉 XL C/C++ 使用 -O2 而不是 -O3?
【问题讨论】:
标签: optimization pragma powerpc compiler-options xlc