klen 1 4 декабря, 2009 Опубликовано 4 декабря, 2009 · Жалоба это - скорость, компактность, объем потребного озу, скорость кодогенерации в одном флаконе просто если все (и вы и создатели WinAVR, в том числе) собирают из одних исходников, то какая разница. этот вопрос и для ARM(ов) справедлив. разница есть и их 2 штуки минимум. 1. сам компиллер и библиотеки можно собирать с мулионом вариантов 0пций компиляции и получить разный выходной бинарный код. исходнички то одни .... 2. я компиляю свежие исходники с оперативными изменеиями, которые в релизы еще не вошли. WinAVR раз в год опоросяеццо... или реже? исходнички то разные .... но по большому счету наверно в 99% проектов это незаметно. для энтузиастов-исследователей интересно поглядеть какой на выходе асм , а просто разработчиком это паралельно Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Andrew2000 0 8 декабря, 2009 Опубликовано 8 декабря, 2009 · Жалоба 2 klen Спасибо за ответы! остался без внимания вопрос: - в gcc/config/arm/t-arm-elf какие-нить изменения вносите для полного мультилиба? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
klen 1 8 декабря, 2009 Опубликовано 8 декабря, 2009 · Жалоба "полный" это относительное понятие модете еще дораскоментировать некоторве секции # For most CPUs we have an assembly soft-float implementations. # However this is not true for ARMv6M. Here we want to use the soft-fp C # implementation. The soft-fp code is only build for ARMv6M. This pulls # in the asm implementation for other CPUs. LIB1ASMFUNCS += _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_tls _bb_init_func \ _call_via_rX _interwork_call_via_rX \ _lshrdi3 _ashrdi3 _ashldi3 \ _arm_negdf2 _arm_addsubdf3 _arm_muldivdf3 _arm_cmpdf2 _arm_unorddf2 \ _arm_fixdfsi _arm_fixunsdfsi \ _arm_truncdfsf2 _arm_negsf2 _arm_addsubsf3 _arm_muldivsf3 \ _arm_cmpsf2 _arm_unordsf2 _arm_fixsfsi _arm_fixunssfsi \ _arm_floatdidf _arm_floatdisf _arm_floatundidf _arm_floatundisf \ _clzsi2 _clzdi2 MULTILIB_OPTIONS = marm/mthumb MULTILIB_DIRNAMES = arm thumb MULTILIB_EXCEPTIONS = MULTILIB_MATCHES = MULTILIB_OPTIONS += march=armv7 MULTILIB_DIRNAMES += armv7 MULTILIB_EXCEPTIONS += march=armv7* marm/*march=armv7* MULTILIB_MATCHES += march?armv7=march?armv7-a MULTILIB_MATCHES += march?armv7=march?armv7-r MULTILIB_MATCHES += march?armv7=march?armv7-m MULTILIB_MATCHES += march?armv7=mcpu?cortex-a8 MULTILIB_MATCHES += march?armv7=mcpu?cortex-r4 MULTILIB_OPTIONS += mcpu=cortex-m3 MULTILIB_DIRNAMES += cortex-m3 MULTILIB_EXCEPTIONS += mcpu=cortex-m3* *march=armv7*/mcpu=cortex-m3* marm/*mcpu=cortex-m3* MULTILIB_MATCHES += mcpu?cortex-m3=mtune?cortex-m3 # Not quite true. We can support hard-vfp calling in Thumb2, but how do we # express that here? Also, we really need architecture v5e or later # (mcrr etc). #MULTILIB_OPTIONS += mfloat-abi=hard #MULTILIB_DIRNAMES += fpu #MULTILIB_EXCEPTIONS += *mthumb/*mfloat-abi=hard* # MULTILIB_OPTIONS += mcpu=ep9312 # MULTILIB_DIRNAMES += ep9312 # MULTILIB_EXCEPTIONS += *mthumb/*mcpu=ep9312* # #MULTILIB_OPTIONS += mlittle-endian/mbig-endian #MULTILIB_DIRNAMES += le be #MULTILIB_MATCHES += mbig-endian=mbe mlittle-endian=mle # #MULTILIB_OPTIONS += mhard-float/msoft-float #MULTILIB_DIRNAMES += fpu soft #MULTILIB_EXCEPTIONS += *mthumb/*mhard-float* # MULTILIB_OPTIONS += mno-thumb-interwork/mthumb-interwork MULTILIB_DIRNAMES += normal interwork # # MULTILIB_OPTIONS += fno-leading-underscore/fleading-underscore # MULTILIB_DIRNAMES += elf under # # MULTILIB_OPTIONS += mcpu=arm7 # MULTILIB_DIRNAMES += nofmult # MULTILIB_EXCEPTIONS += *mthumb*/*mcpu=arm7* # # Note: the multilib_exceptions matches both -mthumb and # # -mthumb-interwork # # # # We have to match all the arm cpu variants which do not have the # # multiply instruction and treat them as if the user had specified # # -mcpu=arm7. Note that in the following the ? is interpreted as # # an = for the purposes of matching command line options. # # FIXME: There ought to be a better way to do this. # MULTILIB_MATCHES += mcpu?arm7=mcpu?arm7d # MULTILIB_MATCHES += mcpu?arm7=mcpu?arm7di # MULTILIB_MATCHES += mcpu?arm7=mcpu?arm70 # MULTILIB_MATCHES += mcpu?arm7=mcpu?arm700 # MULTILIB_MATCHES += mcpu?arm7=mcpu?arm700i # MULTILIB_MATCHES += mcpu?arm7=mcpu?arm710 # MULTILIB_MATCHES += mcpu?arm7=mcpu?arm710c # MULTILIB_MATCHES += mcpu?arm7=mcpu?arm7100 # MULTILIB_MATCHES += mcpu?arm7=mcpu?arm7500 # MULTILIB_MATCHES += mcpu?arm7=mcpu?arm7500fe # MULTILIB_MATCHES += mcpu?arm7=mcpu?arm6 # MULTILIB_MATCHES += mcpu?arm7=mcpu?arm60 # MULTILIB_MATCHES += mcpu?arm7=mcpu?arm600 # MULTILIB_MATCHES += mcpu?arm7=mcpu?arm610 # MULTILIB_MATCHES += mcpu?arm7=mcpu?arm620 EXTRA_MULTILIB_PARTS = crtbegin.o crtend.o crti.o crtn.o # If EXTRA_MULTILIB_PARTS is not defined above then define EXTRA_PARTS here # EXTRA_PARTS = crtbegin.o crtend.o crti.o crtn.o LIBGCC = stmp-multilib INSTALL_LIBGCC = install-multilib # Currently there is a bug somewhere in GCC's alias analysis # or scheduling code that is breaking _fpmul_parts in fp-bit.c. # Disabling function inlining is a workaround for this problem. TARGET_LIBGCC2_CFLAGS = -fno-inline # Assemble startup files. $(T)crti.o: $(srcdir)/config/arm/crti.asm $(GCC_PASSES) $(GCC_FOR_TARGET) $(GCC_CFLAGS) $(MULTILIB_CFLAGS) $(INCLUDES) \ -c -o $(T)crti.o -x assembler-with-cpp $(srcdir)/config/arm/crti.asm $(T)crtn.o: $(srcdir)/config/arm/crtn.asm $(GCC_PASSES) $(GCC_FOR_TARGET) $(GCC_CFLAGS) $(MULTILIB_CFLAGS) $(INCLUDES) \ -c -o $(T)crtn.o -x assembler-with-cpp $(srcdir)/config/arm/crtn.asm Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Andrew2000 0 9 декабря, 2009 Опубликовано 9 декабря, 2009 · Жалоба "полный" это относительное понятие Спасибо! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ReAl 0 16 декабря, 2009 Опубликовано 16 декабря, 2009 · Жалоба 2_All_кому_нада _avr ктонить тыкнет носом в патч который avr-size заставляет знать размеры ОЗУ и FLASH микросхем. лень искать и лень самому писать. https://winavr.svn.sourceforge.net/svnroot/...-avr-size.patch Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
klen 1 16 декабря, 2009 Опубликовано 16 декабря, 2009 · Жалоба https://winavr.svn.sourceforge.net/svnroot/...-avr-size.patch спасибо. при следующей сборке постараюсь прикрутить. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
klen 1 24 января, 2010 Опубликовано 24 января, 2010 · Жалоба с замиранием дыхания констатирую окончание "праздников", с чем и поздравляю, неее.. ребята, с этим нада что то делать. так мы новое прекрасное общество с таким календарем не построим итак, оправившись от тяжелейшего отдыха, сравнимого по воздействию на организм с жеским стресом, выкатываю свежую сборку для мелкоармов http://www.klen.org/Files/DevTools/kgp_arm_eabi_20100119.7z оставлен GDB 6.8, новый 7.0-ой тоже есть, но c ним есть эклипс регистры не кажет - перцы из eclipse.org тупят и не патчат CTD+JTAG/gdb плагины. должен сказать что openocd растет как на дрожжах - позитиф! за месяц нового много функционала. собрал сборку под мипсы с ньюлибом. нада комунить? для авыэров будет пожже. хочу закрыть все накопившиеся вопросы с avr32, atxmega, avr-size Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AHTOXA 15 29 января, 2010 Опубликовано 29 января, 2010 · Жалоба выкатываю свежую сборку для мелкоармов http://www.klen.org/Files/DevTools/kgp_arm_eabi_20100119.7z Ура! Но... чего-то не хватает:) cc1plus.exe -- хочет отсутствующую libstdc++-6.dll; make --version молча завершается; sh тоже молча завершается; openocd хочет libusb0.dll. Первое критично, остальное пофиг:) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
inco 1 29 января, 2010 Опубликовано 29 января, 2010 · Жалоба Тоже подтверждаю. Версия не рабочая. Проект собранный на версии kgp_arm_eabi_20091127 с новой версией не собирается! Ассемблерные файлы не компилируются (startup) и на файлы c++ тоже ругается. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
klen 1 30 января, 2010 Опубликовано 30 января, 2010 · Жалоба завтра (тоесть утром) починим. про libstdc++-6.dll я сам уже заметил. перенес на другой комп. 2_inco а дайте этот асмовый файл, я погляжу про че там ругаеццо. тем немение этой сборкой собрал проетик с stm32f107vct + rtl8201cp + uIP , заработало! это первое мое железо с эзернетом. зайти броузером на платку и выставить светодиоды - это приятно. зы. яж выше писал - выход из праздников вещь тяяяжелоая :cranky: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
inco 1 30 января, 2010 Опубликовано 30 января, 2010 · Жалоба Так давать нечего стандартный startup_stm32f10x_hd.S из библиотек STM32 а вот как ругается уже не помню. После того как выяснил что не работает вернулся на предыдущую версию. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
klen 1 1 февраля, 2010 Опубликовано 1 февраля, 2010 · Жалоба свежая сборка для мелкоармов http://www.klen.org/Files/DevTools/kgp_arm_eabi_20100201.7z вроде теперь все "дээллэлки" положил :) openocd собран "ширше и глубже": --enable-ft2232_ftd2xx --enable-ep93xx --enable-at91rm9200 --enable-presto_ftd2xx --enable-parport-giveio --enable-amtjtagaccel --enable-jlink --enable-rlink --enable-arm-jtag-ew должны работать не только прикрутки на ftdi. проверьте у кого есть RLink и JLink. проверил на своих проекта на stm32f107 и lpc2103, девайсы работают исправно. 2_inco асм компиляет и для того и для другого. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dimka76 59 2 февраля, 2010 Опубликовано 2 февраля, 2010 · Жалоба свежая сборка для мелкоармов Что означает термин "мелкоармы" ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Сергей Борщ 134 2 февраля, 2010 Опубликовано 2 февраля, 2010 · Жалоба Что означает термин "мелкоармы" ?Рискну предположить, что это Little-endian ARM. Правильно догадался? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AHTOXA 15 2 февраля, 2010 Опубликовано 2 февраля, 2010 · Жалоба Рискну предположить, что это Little-endian ARM. Правильно догадался? Сдаётся мне, что нет:) Моё предположение - это голые армы (без оси), первая строчка в табличке от CS. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться