реклама на сайте
подробности

 
 
85 страниц V  « < 35 36 37 38 39 > »   
Reply to this topicStart new topic
klen
сообщение Mar 30 2011, 08:46
Сообщение #541


бессмертным стать можно тремя способами
*****

Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912



2_AHTOXA
а работет то что скомпилялось? я то только на кортексах могу тестировать. еще есть еще белогвардейские недобитки в виде arm7tdmi которые в текущих проектах у многих.

и еще..мне по скорости сгенеренного кода интереснее узнать разницу. флеш в первом приближении можно считать резиновым а озу квазирезиновым( разуеется на моих задачах).
Go to the top of the page
 
+Quote Post
AHTOXA
сообщение Mar 30 2011, 09:18
Сообщение #542


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



Да вроде работает. Проверил на STM32 и на ADuC70xx. Дома есть ещё LPC2148, могу на них проверить.
Проекты на C++, scmRTOS.
Про скорость могу сказать лишь одно - пока хватаетsm.gif Честно говоря, в моих приложениях я не знаю как сравнивать, а писать специальные тесты некогда...


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post
r301
сообщение Mar 30 2011, 11:39
Сообщение #543





Группа: Участник
Сообщений: 13
Регистрация: 20-10-07
Пользователь №: 31 533



lto таки заработало yeah.gif . как оказывается в LDFLAGS кроме -flto надо еще и флаги оптимизации добавлять.
добавил в makefile
Код
LDFLAGS += -flto $(OPTIMIZATION)
CFLAGS += -flto

и вот оно, счастье.
Код
с -Os -combine -fwhole-program (gcc version 4.5.0 20091115 т.к. в 4.7 -combine убрали):
  text    data     bss
16665      40    4232

c -Os -flto (gcc gcc version 4.7.0 20110328)
   text    data     bss
  16113      40    4240


Go to the top of the page
 
+Quote Post
Bender
сообщение Mar 30 2011, 13:19
Сообщение #544


Частый гость
**

Группа: Участник
Сообщений: 123
Регистрация: 28-06-05
Из: Тула
Пользователь №: 6 361



У меня на одном проекте LPC2212 (включая 87к двоичных данных):
Код
-O1
yagarto 4.51 - 110040 байт
yagarto 4.52 - 110036 байт
kgp       4.7  - 108929 байт
-Os
kgp без LTO       4.7  - 107578 байт
kgp c LTO       4.7  - 103344  байт


На другом проекте LPC2212 (включая 65к двоичных данных):
Код
-Os
kgp без LTO  - 87135  байт
kgp c    LTO  - 82161  байт


Отличная экономия sm.gif
Да, кстати, проекты под TNKernel 2.6.

Сообщение отредактировал Bender - Mar 31 2011, 04:54
Go to the top of the page
 
+Quote Post
klen
сообщение Mar 30 2011, 13:50
Сообщение #545


бессмертным стать можно тремя способами
*****

Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912



приеду домой попробую тоже lto , но у меня какието траблы были, в коде ковырялся - бросил, не стал разбиратся. судя по резултату lto оптимизатор нехило код функций перекрутил через мясорубку.
этож получается lto оптимизатор из 27к утрамбовал в 23к это если я не ошибаюсь 14 процентов - даже не верится. а код работает хоть?
что характерно - сие шаманство возможно только для elf бинарников, токсть встраиваемый линкус и проги для него получится отплющить а вот winCE видимо курит солому.

по поводу флагов оптимизации непонятно - как я понимаю они в elf объектники складываются на всякий случай либов секции dwarf либо еще кудато, поэтому lto-wraper и lto1 может их и сам вытащить...

gcc мне напоминает В.Ленина - все для народа (для тех кто пламенный революционер и мелкобарыжнеческого элемента у кого бабла нет на иар wink.gif)
Go to the top of the page
 
+Quote Post
Mitsufan
сообщение Mar 30 2011, 21:54
Сообщение #546


Участник
*

Группа: Участник
Сообщений: 31
Регистрация: 13-03-07
Пользователь №: 26 123



Что-то линкер из последней сборки для MIPS стал ругаться на инверсию атрибута в описании блока памяти в скрипте линкера.

MEMORY
{
kseg1_data_mem (w!x) : ORIGIN = 0xA0000000, LENGTH = 0x20000
}

../../../mips-kgp-elf/bin/ld.exe: invalid syntax in flags
collect2: ld returned 1 exit status

Меняю ld.exe на предыдущий (4.6.0 от 25.07.2010) - все нормально компилируется.
Go to the top of the page
 
+Quote Post
klen
сообщение Mar 31 2011, 03:58
Сообщение #547


бессмертным стать можно тремя способами
*****

Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912



2_Mitsufan
мож синтаксис поменялся, нада доки посмотреть на binutils. но скорее всего косяг.
а кокой mips пропрограмируете?
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Mar 31 2011, 07:09
Сообщение #548


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Кто-нибудь с флагом -flto пробовал работать с чем-то похожим на ramfunc? Как выглядят Ваши скрипты и определения? Моё срособ (с секцией по имени .data_ramfunc) даёт с применением link time optimization утроение объёма ОЗУ под такие функции.
Временно выкинул использование этой фичи - код в среднем на 25 процентов ужался (AT91SAM7Sxxx) и при этом продолжает работать!

Сообщение отредактировал Genadi Zawidowski - Mar 31 2011, 07:12
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение Mar 31 2011, 08:55
Сообщение #549


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



а avr-gcc 4.7.0 под win32 c lto планируется? Уж очень хочется!
Сбилдите плиз, пусть там не всё будет гладко с отладочной информацией...


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post
Mitsufan
сообщение Mar 31 2011, 10:58
Сообщение #550


Участник
*

Группа: Участник
Сообщений: 31
Регистрация: 13-03-07
Пользователь №: 26 123



MIPS - PIC32, скрипты для линкера от родного микрочиповского C32. С предыдущими сборками KGP все работало.

А где можно посмотреть изменения для GCC 4.7, желательно прямой линк.

Цитата(klen @ Mar 31 2011, 06:58) *
2_Mitsufan
мож синтаксис поменялся, нада доки посмотреть на binutils. но скорее всего косяг.
а кокой mips пропрограмируете?

Go to the top of the page
 
+Quote Post
klen
сообщение Mar 31 2011, 11:46
Сообщение #551


бессмертным стать можно тремя способами
*****

Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912



2_Mitsufan
дока по бинутилсам http://sourceware.org/binutils/docs-2.21
по gcc http://gcc.gnu.org/onlinedocs/gcc-4.6.0/gcc/
изменения 4.5->4.6 http://gcc.gnu.org/gcc-4.6/changes.html
отличия в 4.7 пока нельзя описать(ну тоесть можно но доки такой не существует, правла есть местами описание куда двигается процесс) поскольку 4.7 это код где поживому правки вносятся. различия только для релизов публикуется (то у чего код заморожен). а если нада то все svn в виде диффов покажет.

и как вам ядро M4K ? у меня есть теория что мипс есть наилучшая процессорная архитектура, только почемуто она не сильно в массы пропихивается. с другими сравнить можете хотябы по ощущениям. gcc должен для мипсов давать очень хороший код - архитектора ядра академическая.

2_demiurg_spb
да планирую, темболее что в выходные то что собралось компиляло мой проект с dwarf2 и компиллер не падал, и я даже собирал для говновиндовса, и даже под варстудией тестил - но чтото мне там не понравилось я и не стал выкладывать.
короче говоря я выложу сборку - а там посмотрим че получится. всетаки как я понял атмелу пипец со всех сторон. кстате что касается атмела вобщем то атмел достиг апофеоза маразма : http://www.terraelectronica.ru/news_postup.php?ID=2184 даже если они случайно нулик по ошибке сзади цены дописали - всервно атмелу кирдык. чтоб спастись атмел должен раздавать иструментальные средства с доплатой, килограммом травы, бутылкой водки и пирожком в придачу.

и вообще, я раньше критически относился к потенциалу нашей родины и качеству людского матреиала... но вот "у них" ведь тоже есть перлы. один из последних это вебдизайн сайта ST Microelectronix ( www.st.com ) - это что с чем то... посмотрев это становится спокйно на наше тихое болото - нефига они нас не победят wink.gif ножки подломятся
Go to the top of the page
 
+Quote Post
Andrew L
сообщение Apr 4 2011, 09:51
Сообщение #552





Группа: Новичок
Сообщений: 4
Регистрация: 24-03-11
Пользователь №: 63 853



Добрый день. Пытаюсь писать под mips из под винды. После компиляции элементарной С программы в ассемблерном листинге функция main начинается с addiu sp,sp, -16. После выполнения данной команды процессор сваливается в исключение. Значение регистра sp до этого не трогал. Если оно изначально нулевое, то он попадает в конец области памяти, которая не существует физически(размер ОЗУ и ПЗУ меньше) Отсюда сделал вывод, что нужно инициализировать указатель стека. Как указать компилятору начало стека, области памяти(ОЗУ, ПЗУ)? Подозреваю что это делается в startup коде, но примеров под mips не нашел.
Go to the top of the page
 
+Quote Post
ukpyr
сообщение Apr 8 2011, 13:42
Сообщение #553


Профессионал
*****

Группа: Участник
Сообщений: 1 264
Регистрация: 17-06-08
Из: бандустан
Пользователь №: 38 347



Цитата
ставить весь MSYS нет необходимости, вы его всеравно не будете использовать при работе. изза 4 файлов ставить сотню другую, незачем http://klen.org/Files/DevTools/make_sh_rm_touch.7z только тех утилит что мспользуются при сборке проектов с помощью make
закинул этот make в папку bin mingw-win32 - не запускается (вернее запускается но ничего не выводит в консоль и не выполняет Makefile). Из другой папки - нормально. Так и должно быть ?
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Apr 9 2011, 14:30
Сообщение #554


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



У кого для cortex-m3 получилось собрать с -Os -flto ? У меня ни одной непустой секции .text не находится...
Go to the top of the page
 
+Quote Post
AHTOXA
сообщение Apr 9 2011, 19:47
Сообщение #555


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



У меня не вышло. text ненулевой, но не работает. Ни -O2 ни -Os sad.gif
А вот под ADuC706x - получилось, очень приличный эффект.


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post

85 страниц V  « < 35 36 37 38 39 > » 
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 24th June 2025 - 01:00
Рейтинг@Mail.ru


Страница сгенерированна за 0.0143 секунд с 7
ELECTRONIX ©2004-2016