我是 Borland 的长期用户(从 Turbo C 开始)(直到 BC5.2)。 我使用 MingW/GCC 和 CodeBlocks 已经大约一年了,主要是 特别是为了额外的支持。原生 64 位整数。
无论如何,我对编译速度有疑问。
我有一个 C (Win32) 文件,长度约为 60,000 行。 在 Borland 5.2 上,编译此文件大约需要 3-5 秒。 在 GCC 上,需要 35 秒多一点。
我使用的 GCC 命令行选项是。
-std=c99 -s -O2(我也尝试过-O)
最终的 exe 大小几乎相同 +/- 50kB。
为什么编译时间差异这么大?在那里 一种加速 GCC 与 BC5.2 相当的方法?
Borland 的编译器从一开始就设计得很快,至少根据当时发布的营销和基准测试来看是这样,并得到了业界的广泛认可。 他们的目标是单一架构,即 x86 系列。
gcc
的设计初衷并不是为了快速。 它的设计目的是:
预期用途的分歧无疑会影响其性能。