URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 40857
[ Назад ]

Исходное сообщение
"OpenNews: Изучаем параметры GCC."

Отправлено opennews , 24-Мрт-08 15:54 
Опубликован (http://netsago.org/ru/docs/1/9/) перевод статьи "Getting Familiar with GCC Parameters (http://www.onlamp.com/pub/a/onlamp/2007/04/03/getting-famili...)", в которой рассмотрены следующие параметры GCC (GNU C Complier):


-  Параметры, относящиеся к оптимизации;
-  Параметры, относящиеся к вызову функций;
-  Параметры, относящиеся к отладке;
-  Параметры, относящиеся к препроцессору.

URL: http://netsago.org/ru/docs/1/9/
Новость: http://www.opennet.ru/opennews/art.shtml?num=14921


Содержание

Сообщения в этом обсуждении
"Изучаем параметры GCC."
Отправлено guest , 24-Мрт-08 15:54 
лучше бы толковую доку по кросс-компиляции запостили...

"Изучаем параметры GCC."
Отправлено pavlinux , 24-Мрт-08 16:03 
А тутошные не подходят...

http://www.opennet.ru/docs/RUS/clfs/CLFS-BOOK-x86.html
http://www.opennet.ru/docs/RUS/clfs/CLFS-BOOK-ppc.html
http://www.opennet.ru/docs/RUS/clfs/CLFS-BOOK-sparc.html
http://www.opennet.ru/docs/RUS/clfs/CLFS-BOOK-alpha.html



"Изучаем параметры GCC."
Отправлено Dimmus , 24-Мрт-08 16:18 
*GNU C CompILER

"Изучаем параметры GCC."
Отправлено cepera , 25-Мрт-08 11:42 
> GNU C CompILER

GCC расшифровывается как GNU Compiler Collection (http://gcc.gnu.org)


"Изучаем параметры GCC."
Отправлено Andrey Mitrofanov , 25-Мрт-08 12:20 
>> GNU C CompILER
>
>GCC расшифровывается как GNU Compiler Collection (http://gcc.gnu.org)

а /usr/bin/gcc, ключи которого мы тут узучаем типа, -- натурально-таки GNU C compiler


"Изучаем параметры GCC."
Отправлено DeNIS , 24-Мрт-08 16:22 
Артут Грифитс "GCC в подлинике".
Ищи на кпнемо.ру, ищи на 2бакса.нет, ищи на алл-ебукс.ком.
Я книгу читал с листа, и электронная верия тоже ... е ...
И про кроскомпиляцию там все как на ладони.

"Изучаем параметры GCC."
Отправлено pavlinux , 24-Мрт-08 16:29 
пример 1.

--- test.c      2008-03-24 16:27:48.830464281 +0300
+++ test.c      2008-03-24 16:27:36.002552794 +0300
@@ -1,7 +1,7 @@
#include<stdio.h>
    int main(int argc, char *argv[])
    {
-   int i,j,k;
+   int i,j,k
    unsigned long acc=0;
    for(i=0;i<10000;i++)
         for(j=0;j<5000;j++)


"Изучаем параметры GCC."
Отправлено pavlinux , 24-Мрт-08 16:30 
Упс, наоборот ....

-   int i,j,k
+   int i,j,k;


"Изучаем параметры GCC."
Отправлено gcc , 24-Мрт-08 23:54 
а толку
вот скажите как принудительно GCC заставить параметры через стек push/pop пихать а не через mov как он это делает
я уже все перепробовал - все опции которые как то могли влиять

"Изучаем параметры GCC."
Отправлено Wulf , 25-Мрт-08 01:12 
под NIX-ами это автоматом должно случится. под виндами, вероятно, надо при объявлении функций __attribute__((__cdecl__)) добавлять

"Изучаем параметры GCC."
Отправлено DeNIS , 25-Мрт-08 09:02 
Ну дык все зависит от ситуации. Если у тебя в проце регистров меньше чем параметров - то уж извини тока церез стек (и лучше использоать указатели), если больше - то при оптимизации это будет автоматом. И не забывай волшебное ключевое слово registred (или) что то в этом роде. А в опциях, я такого не припомню.
Будь здоров.

"Изучаем параметры GCC."
Отправлено gcc , 25-Мрт-08 12:28 
что то ты вы говорите но не в тему
причем тут автоматически не автоматически
register тут вообще не причем

есть параметер в gcc который тупо говорит пихать параметры функций через
push
objdump смотрите что в итоге получаеться
а он это оптимизирует и постояно пихает это через тот же стек токо mov


"Изучаем параметры GCC."
Отправлено Cub , 29-Мрт-08 00:10 
> он это оптимизирует и постояно пихает это через тот же стек токо mov

Вероятно, на Вашем проце такая последовательность команд в каком-то смысле выгоднее.
В каком именно - вероятно, зависит от ключей оптимизации.
Попробуйте полностью отключить оптимизацию и проверьте.


"Изучаем параметры GCC."
Отправлено gcc , 09-Апр-08 00:19 
>> он это оптимизирует и постояно пихает это через тот же стек токо mov
>
>Вероятно, на Вашем проце такая последовательность команд в каком-то смысле выгоднее.
>В каком именно - вероятно, зависит от ключей оптимизации.
>Попробуйте полностью отключить оптимизацию и проверьте.

там вообще оптимизации нет
если есть желание и есть unix предлагаю попробовать и поискать варианты самому)


"Изучаем параметры GCC."
Отправлено Vital , 30-Мрт-08 15:35 
Еще удивляет, что не используются команды ENTER и LEAVE для создания/удаления кадра стека