我正在尝试使用GCC编译优化来在我的C代码中设置全局优化。 Ubuntu上的GCC版本是4.4.3。基本思想是使用功能特定的优化级别。使用#pragma G代码优化的C代码优化
#pragma GCC optimize ("O3")
我得到一个编译错误 只是我在我的C代码main函数之前
但是,当我建立它,我得到的编译错误如下 -
passrecovery.c: In function âmainâ:
passrecovery.c:493: internal compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-4.4/README.Bugs> for instructions.
make: *** [all] Error 1
我检查的自述.Bugs文件,在错误中提到,但没有发现关于此的线索。
是否支持4.4.3 GCC或#pragma optimize
?
如果是的话,那么我在使用这个编译指示来优化代码时做得不正确。
任何其他替代GCC指令用于优化速度代码?
编辑:我甚至尝试#pragma GCC push_options
然后#pragma GCC optimize ("O3")
和文件#pragma GCC pop_options
结束;同样的错误。
仅供参考我试图在main()上使用这个优化指令。这似乎是问题所在。这个指令工作正常(Atleast编译正常),如果在其他函数上使用(除了main) – goldenmean
@想要更多的眼球检查导致这个的代码。只有这个代码使用的库是-lcrypt(crypt.h),string.h,stdio.h,stdlib.h,ctype.h。 – goldenmean
@goldenmean:建议尝试删除“”以及首先依赖它的内容......第二。你应该看看前490行的内容,看看哪些可以批量删除,同时保持崩溃。您可以先使用评论,然后删除它们。有可能无法移动任何代码行。但这不太可能。每一行删除都是有益的。你的程序没有使用你自己的头文件可以简化生活。 –