|
Не могу решить проблему вызова функций IAR, используется 1 раз, но вызывается call |
|
|
|
Oct 26 2005, 23:29
|

Познающий...
     
Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125

|
Здравствуйте! Моя программа состоит из нескольких модулей. Есть главный модуль main.c, в нем для инициализации различных частей программы вызываются функции из других модулей. Причем эти функции используются однократно, при запуске программы. Уровень оптимизации стоит максимальный и по размеру кода. Просмотрев дизассемблированный текст, я увидел, что эти функции вызываются с помощью rcall. Нельзя ли что-нибудь настроить, чтоб тело этих функции помещалось на место команды rcall, т.е. чтобы они не вызывались (ведь больше они не где не используются), таким образом экономим память (оптимизация то по размеру).
В общем мой вопрос так звучит: как сделать, чтоб однократно используемые функции не вызывались, а их тело помещалось вместо вызова подпрограммы.
--------------------
Выбор.
|
|
|
|
|
 |
Ответов
|
Nov 26 2005, 11:38
|
Участник

Группа: Свой
Сообщений: 41
Регистрация: 16-02-05
Пользователь №: 2 688

|
Цитата(halfdoom @ Oct 31 2005, 13:40)  Цитата(haker_fox @ Oct 27 2005, 02:29) Моя программа состоит из нескольких модулей. Есть главный модуль main.c, в нем для инициализации различных частей программы вызываются функции из других модулей. Причем эти функции используются однократно, при запуске программы. Уровень оптимизации стоит максимальный и по размеру кода. Функции из разых модулей не могут быть встроены. Что-бы обойти эти поблемы последние версии иар имеют ключик позволяющий компилировать несколько модулей одновременно с формированием одного объектного файла. Если можно поподробнее что за ключ? Искал в хелпе на 4.11а, но видимо плохо.
|
|
|
|
|
Nov 26 2005, 22:26
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(Balaganov @ Nov 26 2005, 13:38)  Если можно поподробнее что за ключ? Искал в хелпе на 4.11а, но видимо плохо. --mfc Enable multiple file compilation В IAR ARM ANSI C/C++ Compiler V4.30A-P050906/W32 имеет место быть, правда помечен, как эспериментальный. А в хелпах его, как и многого другого, нет.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Nov 27 2005, 22:48
|
Участник

Группа: Свой
Сообщений: 41
Регистрация: 16-02-05
Пользователь №: 2 688

|
Цитата(zltigo @ Nov 27 2005, 01:26)  Цитата(Balaganov @ Nov 26 2005, 13:38)  Если можно поподробнее что за ключ? Искал в хелпе на 4.11а, но видимо плохо.
--mfc Enable multiple file compilation В IAR ARM ANSI C/C++ Compiler V4.30A-P050906/W32 имеет место быть, правда помечен, как эспериментальный. А в хелпах его, как и многого другого, нет. А для AVR нету подобного? А то студия при пошаговой отладке не переходит на include файл если функция в нем является inline
|
|
|
|
Сообщений в этой теме
haker_fox Не могу решить проблему вызова функций IAR Oct 26 2005, 23:29 prottoss Цитата(haker_fox @ Oct 27 2005, 07:29)В общем... Oct 26 2005, 23:39 haker_fox ЦитатаВообще для этого в IAR (не знаю как в других... Oct 26 2005, 23:58 prottoss Цитата(haker_fox @ Oct 27 2005, 07:58)А нельз... Oct 27 2005, 00:36 haker_fox 2prottoss: спасибо! Я поставля эти директивы в... Oct 27 2005, 00:56 starter48 Цитата(haker_fox @ Oct 27 2005, 06:29)В общем... Oct 28 2005, 10:55 haker_fox Но если разместить функции в одном модуле, то проп... Oct 28 2005, 14:29 starter48 Цитата(haker_fox @ Oct 28 2005, 21:29)Но если... Oct 28 2005, 14:41  prottoss Цитата(starter48 @ Oct 28 2005, 22:41)Можешь ... Oct 28 2005, 15:15   starter48 Цитата(prottoss @ Oct 28 2005, 22:15)Компилят... Oct 28 2005, 15:52    prottoss Цитата(starter48 @ Oct 28 2005, 23:52)Нужно о... Oct 28 2005, 16:12     starter48 Цитата(prottoss @ Oct 28 2005, 23:12)Тогда об... Oct 28 2005, 16:39      prottoss Цитата(starter48 @ Oct 29 2005, 00:39)1) Прощ... Oct 28 2005, 16:53       starter48 Цитата(prottoss @ Oct 28 2005, 23:53)Цитата(s... Oct 28 2005, 17:11        prottoss Цитата(starter48 @ Oct 29 2005, 01:11)Зачем с... Oct 28 2005, 18:59         starter48 Цитата(prottoss @ Oct 29 2005, 01:59)Цитата(s... Oct 28 2005, 19:29          prottoss Цитата(starter48 @ Oct 29 2005, 03:29)А как т... Oct 29 2005, 19:27 _artem_ Po moemu C99 podderzivaet inline keyword . No IAR ... Oct 29 2005, 19:43
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|