[devel] Dramatic g++4.4 -g speed regression

Dmitry V. Levin ldv на altlinux.org
Чт Янв 21 15:08:53 UTC 2010


On Thu, Jan 21, 2010 at 02:32:29PM +0200, Victor Forsyuk wrote:
> 2010/1/20 Dmitry V. Levin <ldv на altlinux.org>:
> > On Wed, Jan 20, 2010 at 12:33:28AM +0200, Kirill A. Shutemov wrote:
> >> 2010/1/19 Victor Forsyuk <force на altlinux.org>:
> > [...]
> >> > Первая неудачная пересборка fwbuilder была, по-видимому, 9 ноября. Во
> >> > всяком случае так датирован первый отчет об этом. Обычно такие отчеты
> >> > я не удаляю, но даже если вдруг - в любом случае это был компилятор
> >> > synced with FC 4.4.2-7.
> >> >
> >> > Поскольку у Вадима на федоровском 4.4.2-7 проблем нет, то
> >> > напрашивается вывод, что причина регресии в альтовских патчах...
> >>
> >> Я попробую разобраться.
> >>
> >> Как hotfix можете добавить -fomit-frame-pointer в флаги компиляции
> >> или убрать -g. Вроде помогает.
> >
> > Если там используется -g, то претензии не принимаются. :)
> 
> Шутки шутками, но претензии принять придется - это баг нашей сборки, а
> не апстрима gcc. Компилятор из FC12 спокойно справляется с кодом
> fwbuilder с опцией "-g" и при отсутствии "-fomit-frame-pointer". Я
> попросил Вадима показать строку вызова компилятора, вот она:

Это не та строка.  Сборка виснет на другом файле (DiscoveryDruid.cpp),
который использует заголовки из других пакетов:

g++ -c -pipe -g -Wno-unused-parameter -pipe -Wall -O2 -march=i586 -mtune=i686 -Wall -W -D_REENTRANT -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtNetwork -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I.. -I../.. -I/usr/include/fwb-3 -I/usr/include/libxml2 -I../../src -I.moc -I.ui -o .obj/DiscoveryDruid.o DiscoveryDruid.cpp
DiscoveryDruid.cpp: In member function 'libfwbuilder::InetAddr DiscoveryDruid::getSeedHostAddress()':
DiscoveryDruid.cpp:817: warning: format not a string literal and no format arguments
DiscoveryDruid.cpp:828: warning: format not a string literal and no format arguments
DiscoveryDruid.cpp: In member function 'void DiscoveryDruid::loadDataFromCrawler()':
DiscoveryDruid.cpp:1425: warning: format not a string literal and no format arguments
DiscoveryDruid.cpp:1434: warning: format not a string literal and no format arguments
DiscoveryDruid.cpp:1458: warning: format not a string literal and no format arguments

[...]
> .obj/moc_NetworkDialogIPv6.o .moc/moc_NetworkDialogIPv6.cpp

.moc/moc_NetworkDialogIPv6.cpp это генерат, он может отличаться,
сравнивать его пока не очень интересно.


-- 
ldv
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : отсутствует
Тип     : application/pgp-signature
Размер  : 198 байтов
Описание: отсутствует
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20100121/3c3541b9/attachment.bin>


Подробная информация о списке рассылки Devel