Chris Lattner wrote:
On Apr 21, 2010, at 11:11 AM, Vladimir Makarov wrote:
This is definitely interesting, but you're also comparing apples and oranges
here (for both compile time and performance). Can you get numbers showing GCC
-O3 and dragonegg with LTO to get a better comparison?
Dragonegg does not work with -flto. It generates assembler code on which gas
complaints (a lot of non-assembler code like target data-layout which are not
in comments).
Ok, I didn't know that didn't get wired up. I'm not familiar with dragonegg,
it might require gold with the llvm lto gold plugin or something.
So I'll do gcc -O3 without -flto. I don't think it will change average
SPECINT2000 rate significantly (although it can change separte benchmark
significantly) but it will make gcc compiler much faster (may be 2 times
because I did not use -fwhole-program). I'll post the results in an hour.
Sounds good, thanks! I suspect the gcc build times will improve.
Here the results of SPECINT2000 on x86_64 for dragonegg -O3 vs gcc-4.5 -O3.
dragonegg: -O3 (release build)
gcc4.5: -O3 (--enable-checking=release)
Compilation Time SPECINT2000
Dragonegg 122.85user 2572
gcc-4.5 142.76user 2784
Dragonegg generates about 9% slower code (vs 11% for gcc with
-flto). Without -flto, gcc4.5 is only 16% slower than dragonegg.