1.4, DeNIS (?), 16:22, 24/03/2008 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Артут Грифитс "GCC в подлинике".
Ищи на кпнемо.ру, ищи на 2бакса.нет, ищи на алл-ебукс.ком.
Я книгу читал с листа, и электронная верия тоже ... е ...
И про кроскомпиляцию там все как на ладони.
| |
1.5, pavlinux (ok), 16:29, 24/03/2008 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
пример 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++)
| |
1.7, gcc (??), 23:54, 24/03/2008 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
а толку
вот скажите как принудительно GCC заставить параметры через стек push/pop пихать а не через mov как он это делает
я уже все перепробовал - все опции которые как то могли влиять
| |
|
2.8, Wulf (??), 01:12, 25/03/2008 [^] [^^] [^^^] [ответить]
| +/– |
под NIX-ами это автоматом должно случится. под виндами, вероятно, надо при объявлении функций __attribute__((__cdecl__)) добавлять
| |
2.9, DeNIS (?), 09:02, 25/03/2008 [^] [^^] [^^^] [ответить]
| +/– |
Ну дык все зависит от ситуации. Если у тебя в проце регистров меньше чем параметров - то уж извини тока церез стек (и лучше использоать указатели), если больше - то при оптимизации это будет автоматом. И не забывай волшебное ключевое слово registred (или) что то в этом роде. А в опциях, я такого не припомню.
Будь здоров.
| |
|
1.12, gcc (??), 12:28, 25/03/2008 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
что то ты вы говорите но не в тему
причем тут автоматически не автоматически
register тут вообще не причем
есть параметер в gcc который тупо говорит пихать параметры функций через
push
objdump смотрите что в итоге получаеться
а он это оптимизирует и постояно пихает это через тот же стек токо mov
| |
|
2.13, Cub (?), 00:10, 29/03/2008 [^] [^^] [^^^] [ответить]
| +/– |
> он это оптимизирует и постояно пихает это через тот же стек токо mov
Вероятно, на Вашем проце такая последовательность команд в каком-то смысле выгоднее.
В каком именно - вероятно, зависит от ключей оптимизации.
Попробуйте полностью отключить оптимизацию и проверьте.
| |
|
3.15, gcc (??), 00:19, 09/04/2008 [^] [^^] [^^^] [ответить]
| +/– |
>> он это оптимизирует и постояно пихает это через тот же стек токо mov
>
>Вероятно, на Вашем проце такая последовательность команд в каком-то смысле выгоднее.
>В каком именно - вероятно, зависит от ключей оптимизации.
>Попробуйте полностью отключить оптимизацию и проверьте.
там вообще оптимизации нет
если есть желание и есть unix предлагаю попробовать и поискать варианты самому)
| |
|
|
1.14, Vital (??), 15:35, 30/03/2008 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Еще удивляет, что не используются команды ENTER и LEAVE для создания/удаления кадра стека
| |
|