>> Всё равно не дотягивает до Clang:
> Уточним: это clang с большинстве тестов сливает gcc.Ещё точнее (благо, FreeBSD позволяет собрать Chromium из порта тем или иным компилятором) — пройти тест http://octane-benchmark.googlecode.com/svn/latest/index.html
Данные брал по лучшему (самому высокому) результату из пяти запусков теста в каждой сборке Хромиума:
chromium-29.0.1547.65@LLVM/Clang 3.3 Octane Score: 10742
Richards 12769
Deltablue 14632
Crypto 12949
Raytrace 14194
EarleyBoyer 17769
Regexp 2237
Splay 5460
NavierStokes 14855
pdf.js 9584
Mandreel 10938
GB Emulator 17274
CodeLoad 10226
Box2DWeb 12369
chromium-29.0.1547.65@GCC 4.6.3 Octane Score: 10855
Richards 12762
Deltablue 14612
Crypto 13004
Raytrace 15466
EarleyBoyer 13977
Regexp 2242
Splay 5362
NavierStokes 14899
pdf.js 11038
Mandreel Mandreel 11144
GB Emulator 17870
CodeLoad 11156
Box2DWeb 12626
Флаги компиляции GCC (выдернуто из лога компиляции):
===> Building for chromium-29.0.1547.65
cd /portsobj/usr/ports/www/chromium/work/chromium-29.0.1547.65 && /usr/bin/env TMPDIR="/tmp" BUILDTYPE=Release GPERF=/usr/local/bin/gperf TMPDIR="/tmp" TMPDIR="/tmp" SHELL=/bin/sh NO_LINT=YES ADDR2LINE="/usr/local/bin/addr2line" AR="/usr/local/bin/ar" AS="/usr/local/bin/as" CPPFILT="/usr/local/bin/c++filt" GPROF="/usr/local/bin/gprof" LD="/usr/local/bin/ld" NM="/usr/local/bin/nm" OBJCOPY="/usr/local/bin/objcopy" OBJDUMP="/usr/local/bin/objdump" RANLIB="/usr/local/bin/ranlib" READELF="/usr/local/bin/readelf" SIZE="/usr/local/bin/size" STRINGS="/usr/local/bin/strings" PREFIX=/usr/local LOCALBASE=/usr/local LIBDIR="/usr/lib" CC="gcc46" CFLAGS="-O2 -pipe -fno-stack-protector -Wl,-rpath=/usr/local/lib/gcc46 -fno-strict-aliasing" CPP="cpp46" CPPFLAGS="" LDFLAGS=" -Wl,-rpath=/usr/local/lib/gcc46" CXX="g++46" CXXFLAGS="-O2 -pipe -fno-stack-protector -Wl,-rpath=/usr/local/lib/gcc46 -fno-strict-aliasing -Wl,-rpath=/usr/local/lib/gcc46" MANPREFIX="/usr/local" BSD_INSTALL_PROGRAM="install -s -o root -g wheel -m 555" BSD_INSTALL_LIB="install -s -o root -g wheel -m 444" BSD_INSTALL_SCRIPT="install -o root -g wheel -m 555" BSD_INSTALL_DATA="install -o root -g wheel -m 444" BSD_INSTALL_MAN="install -o root -g wheel -m 444" /usr/local/bin/ninja -C out/Release chrome
> Заодно еще можно на размер сгнеренного кода посмотреть. GCC в этом плане
> есть что предложить с его LTO и оптимизацией whole program. Реально
> круто оптимизирует - я тут как-то видел как бинарь с 6
> метров похудел до 4. Нехило так - на треть сдулся. Кроме
> всего прочего это означает и более частый cache hit, так что
> скорость тоже в плюсе.
% ls chrom*
-rw-r--r-- 1 root wheel 35M 4 сен 13:11 chromium-29.0.1547.65.clang33.tbz
-rw-r--r-- 1 root wheel 40M 16 сен 18:34 chromium-29.0.1547.65.gcc463.tbz