|
![]() |
Архивированная нить - только для чтения!
Пред. тема | След. тема | ||
Форумы
![]() | |||
---|---|---|---|
Изначальное сообщение | [Проследить за развитием треда] |
"fastcall в gcc" | |
Сообщение от dimus ![]() ![]() ![]() | |
Мне очень нравится конвенция fastcall, мой любимый компилятор OpenWatcom ее активно использует. А вот в gcc я fastcall не обнаружил. Подскажите пожалуйста, может я плохо искал? gcc не воспринимает модификатор fastcall, пишет что мол знать ничего не знаю. Может быть это как-то по другому называется, но мне хочется, чтобы параметры в функцию передавались в регистрах, а не через стек. Заранее спасибо. | |
Рекомендовать в FAQ | Cообщить модератору | Наверх |
Оглавление |
|
Индекс форумов | Темы | Пред. тема | След. тема |
Сообщения по теме |
1. "fastcall в gcc" | |
Сообщение от Soldier ![]() ![]() | |
>Мне очень нравится конвенция fastcall, мой любимый компилятор OpenWatcom ее активно использует. | |
Рекомендовать в FAQ | Cообщить модератору | Наверх |
![]() |
|
2. "fastcall в gcc" | |
Сообщение от Soldier ![]() ![]() | |
void func(int, int) __attribute__((regparm(2))); | |
Рекомендовать в FAQ | Cообщить модератору | Наверх |
![]() |
|
3. "fastcall в gcc" | |
Сообщение от dimus ![]() ![]() | |
Большое спасибо за помощь! Испробую при первой же возможности. Интересно, а почему указание о передаче параметров через регистры находится за функцией? Это обязательно или можно ставить его в любом месте? И еще: а regparm обязательно должен быть заключен в еще одни скобки, или это для красоты? | |
Рекомендовать в FAQ | Cообщить модератору | Наверх |
![]() |
|
4. "fastcall в gcc" | |
Сообщение от Soldier ![]() ![]() | |
>Большое спасибо за помощь! Испробую при первой же возможности. Интересно, а почему | |
Рекомендовать в FAQ | Cообщить модератору | Наверх |
![]() |
|
5. "fastcall в gcc" | |
Сообщение от dimus ![]() ![]() ![]() | |
Почитал, интересно. Однако там я наткнулся на инфу, что если писать в аттрибутах fastcall, то будут использоваться только 2 регистра - EAX & EDX, а используя regparm можно заставить работать и третий - ECX. Тогда, по-моему, лучше в начале программы прописать что-то типа | |
Рекомендовать в FAQ | Cообщить модератору | Наверх |
Удалить |
Индекс форумов | Темы | Пред. тема | След. тема |
Закладки на сайте Проследить за страницей |
Created 1996-2025 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |