klen 1 19 сентября, 2016 Опубликовано 19 сентября, 2016 · Жалоба Решил попробовать Вашу сборку под винду. Не находит либу: libc_nano.a Вы по идеологическим причинам их не собираете? Так невозможно сравнить Вашу сборку со сборками с ланчпада... А вообще проект компилируется нормально, но не собирается. уберите ключик или в спеках поправьте чтобы собиралось с libc - я не заметил разницы в нано и не в нано. во вторых проект не обновляется 2 года и наверно умер. что то, что это для меня одинаковый треш. я свою микрореализацию libc . как допишу свой libm то сам буду только ее использовать и будут изготавливаться две сборки с одной версией компиллероа. может я не там newlibc-nano исходники смотрю.. дайте урл на дерево исходников, попробую собрать сборку с такой версией либы. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
demiurg_spb 0 19 сентября, 2016 Опубликовано 19 сентября, 2016 · Жалоба уберите ключик или в спеках поправьте чтобы собиралось с libcИ таки да. Разница ощутима (nano компактнее). I can confirm you that newlib-nano is now integrated in the main newlib source tree. Building newlib-nano is now a matter of specifying the right configure option. Так что уже несколько лет как newlib-nano включена в newlib. И я уверен, что она достойна чтобы её собирать по умолчанию и в вашей сборке. https://tracker.debian.org/media/packages/n...40818.1a8323b-2 Из readme.txt сборки с ланчпада. This toolchain is released with two prebuilt C libraries based on newlib: one is the standard newlib and the other is newlib-nano for code size. To distinguish them, we rename the size optimized libraries as: libc.a --> libc_s.a libg.a --> libg_s.a To use newlib-nano, users should provide additional gcc compile and link time option: --specs=nano.specs At compile time, a 'newlib.h' header file especially configured for newlib-nano will be used if --specs=nano.specs is passed to the compiler. Nano.specs also handles two additional gcc libraries: libstdc++_s.a and libsupc++_s.a, which are optimized for code size. For example: $ arm-none-eabi-gcc src.c --specs=nano.specs $(OTHER_OPTIONS) Также встречал на просторах тырнета и реентерабельную версию. Вам, как мне кажется, обязательно стоит комитить свои патчи в основную ветку, а то вы сами по себе варитесь, ребята сами. Не продуктивно ИМХО. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
klen 1 19 сентября, 2016 Опубликовано 19 сентября, 2016 · Жалоба >И таки да. Разница ощутима (nano компактнее). уверяю Вас что если я соберу с оптимизацией не по скорости а по размеру - НЕнано может оказаться меньше... Вам размер кода важен? для такого случая собираю редко с ключами -Os и соответсвующими дефайлами всю сборку. собрал с дерева newlib nano 2.1.0 https://github.com/32bitmicro/newlib-nano-2 win64: http://electronix.ru/redirect.php?http://k...LUS.7z.tar.lzma Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
demiurg_spb 0 20 сентября, 2016 Опубликовано 20 сентября, 2016 · Жалоба уверяю Вас что если я соберу с оптимизацией не по скорости а по размеру - НЕнано может оказаться меньше... Вам размер кода важен? для такого случая собираю редко с ключами -Os и соответсвующими дефайлами всю сборку. Надо попробовать. Для меня важен размер прошивки. Скорости хватает. То, что я пробовал на сборках с ланчпада - нано всегда значительно была компактней. Вы наверное не совсем то собрали, как мне кажется - там три года как тишина уже. newlib-nano-2 забекпортили в проект newlib. И теперь он живёт там. А чтобы его собрать нужно просто сконфигурить newlib соответствующим образом. На Вашей сборке с нано получаю: In file included from z:\gcc\arm-gcc-none-eabi\arm-kgp-eabi\include\stdlib.h:11:0, from ./../../../libs/unilib/c/protos/modbus/modbus_buffer.c:1: z:\gcc\arm-gcc-none-eabi\arm-kgp-eabi\include\_ansi.h:16:24: fatal error: sys/config.h: No such file or directory #include <sys/config.h> ^ compilation terminated. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
klen 1 20 сентября, 2016 Опубликовано 20 сентября, 2016 · Жалоба >>>newlib-nano-2 забекпортили в проект newlib. И теперь он живёт там. А чтобы его собрать нужно просто сконфигурить ну да.. разобрался, надо сконфигурить и собрать. в следующий раз сделаю. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
klen 1 15 октября, 2016 Опубликовано 15 октября, 2016 · Жалоба свежак arm linux64 www.klen.org/Files/DevTools/x86_64-kgp-linux-gnu/arm-kgp-eabi_@_x86_64-kgp-linux-gnu_20161015_PRUNUS.7z arm win64 www.klen.org/Files/DevTools/x86_64-kgp-mingw32/arm-kgp-eabi_@_x86_64-kgp-mingw32_20161015_PRUNUS.7z сообщение отредактировано. в связи с обнаруженем косяка файоы удалены и ссылки мертвы. смотрите ниже. выложены обновленные сборки этой версии. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
GenaSPB 11 15 октября, 2016 Опубликовано 15 октября, 2016 (изменено) · Жалоба Свежак со старыми проблемами... C:\user\arm-kgp-eabi_@_x86_64-kgp-mingw32_20161015_PRUNUS\bin\arm-kgp-eabi-gcc bandfilters.o board.o usbd.o usbd_desc.o sequen.o elkey.o encoder.o serial.o hardware.o hd44780.o display.o display2.o keyboard.o keymaps.o nvram.o spifuncs.o formats.o synthcalcs.o filters.o pcf8535.o uc1608.o uc1601s.o lph88.o ls020.o l2f50.o s1d13781.o ILI9320.o ili9225.o st7735.o st7565s.o graphltdc.o sdram.o ili8961.o twi.o pio.o tlv320aic23.o cs4272.o nau8822.o wm8731.o hardwarecodecs.o buffers.o audio.o spis lave.o modems.o sdcard.o ff.o ccsbcs.o tc1.o tests.o -mcpu=cortex-m7 -mthumb -mfloat-abi=hard -mfpu=fpv5-sp-d16 -fno-math-errno -funroll-loops -fgraphite -ffunction-sections -fdata-sections -ffat-lto-objects -flto -Ofast -nostartfiles -T./STM32F746 ZG_rom.ld -Wl,-Map=tc1_stm32f746zg_rom.map,--cref,--no-warn-mismatch -L../../CMSIS-SP-00300-r4p5-00rel0/CMSIS/Lib/GCC -lm -o tc1_stm32f746zg_rom.elf C:\Users\gena\AppData\Local\Temp\ccjjKF9o.ltrans1.ltrans.o: In function `fir_design_lowpass': <artificial>:(.text.fir_design_lowpass+0x66): undefined reference to `sinf' <artificial>:(.text.fir_design_lowpass+0x84): undefined reference to `sinf' <artificial>:(.text.fir_design_lowpass+0xa2): undefined reference to `sinf' <artificial>:(.text.fir_design_lowpass+0xc8): undefined reference to `sinf' <artificial>:(.text.fir_design_lowpass+0xe0): undefined reference to `sinf' C:\Users\gena\AppData\Local\Temp\ccjjKF9o.ltrans1.ltrans.o:<artificial>:(.text.fir_design_lowpass+0x102): more undefined references to `sinf' follow C:\Users\gena\AppData\Local\Temp\ccjjKF9o.ltrans1.ltrans.o: In function `fir_design_lowpass': <artificial>:(.text.fir_design_lowpass+0x150): undefined reference to `memset' <artificial>:(.text.fir_design_lowpass+0x1c8): undefined reference to `cosf' <artificial>:(.text.fir_design_lowpass+0x1d4): undefined reference to `cosf' <artificial>:(.text.fir_design_lowpass+0x1e0): undefined reference to `cosf' <artificial>:(.text.fir_design_lowpass+0x1ea): undefined reference to `cosf' <artificial>:(.text.fir_design_lowpass+0x1fa): undefined reference to `cosf' C:\Users\gena\AppData\Local\Temp\ccjjKF9o.ltrans1.ltrans.o:<artificial>:(.text.fir_design_lowpass+0x20a): more undefined references to `cosf' follow C:\Users\gena\AppData\Local\Temp\ccjjKF9o.ltrans1.ltrans.o: In function `dir_alloc': <artificial>:(.text.dir_alloc+0x12c): undefined reference to `memset' C:\Users\gena\AppData\Local\Temp\ccjjKF9o.ltrans1.ltrans.o: In function `sync_fs.lto_priv.212': <artificial>:(.text.sync_fs.lto_priv.212+0x3c): undefined reference to `memset' C:\Users\gena\AppData\Local\Temp\ccjjKF9o.ltrans1.ltrans.o: In function `trxparam_update.lto_priv.565': <artificial>:(.text.trxparam_update.lto_priv.565+0x4c): undefined reference to `powf' <artificial>:(.text.trxparam_update.lto_priv.565+0xde): undefined reference to `powf' <artificial>:(.text.trxparam_update.lto_priv.565+0x110): undefined reference to `powf' <artificial>:(.text.trxparam_update.lto_priv.565+0x140): undefined reference to `powf' C:\Users\gena\AppData\Local\Temp\ccjjKF9o.ltrans1.ltrans.o: In function `audio_update.lto_priv.564': <artificial>:(.text.audio_update.lto_priv.564+0x4ae): undefined reference to `memset' <artificial>:(.text.audio_update.lto_priv.564+0x5fe): undefined reference to `memset' <artificial>:(.text.audio_update.lto_priv.564+0x73e): undefined reference to `sinf' <artificial>:(.text.audio_update.lto_priv.564+0x74a): undefined reference to `cosf' <artificial>:(.text.audio_update.lto_priv.564+0x766): undefined reference to `sinf' <artificial>:(.text.audio_update.lto_priv.564+0x772): undefined reference to `cosf' <artificial>:(.text.audio_update.lto_priv.564+0x796): undefined reference to `sinf' <artificial>:(.text.audio_update.lto_priv.564+0x7a2): undefined reference to `cosf' <artificial>:(.text.audio_update.lto_priv.564+0x7ca): undefined reference to `sinf' <artificial>:(.text.audio_update.lto_priv.564+0x7d6): undefined reference to `cosf' C:\Users\gena\AppData\Local\Temp\ccjjKF9o.ltrans1.ltrans.o: In function `DMA1_Stream4_IRQHandler': <artificial>:(.text.DMA1_Stream4_IRQHandler+0x100): undefined reference to `memset' <artificial>:(.text.DMA1_Stream4_IRQHandler+0x10e): undefined reference to `memset' C:\Users\gena\AppData\Local\Temp\ccjjKF9o.ltrans1.ltrans.o: In function `processafadcsampleiq.isra.8': <artificial>:(.text.processafadcsampleiq.isra.8+0x360): undefined reference to `log10f' <artificial>:(.text.processafadcsampleiq.isra.8+0x434): undefined reference to `powf' C:\Users\gena\AppData\Local\Temp\ccjjKF9o.ltrans1.ltrans.o: In function `dsp_extbuffer32rx': <artificial>:(.text.dsp_extbuffer32rx+0x7e2): undefined reference to `atan2f' C:\Users\gena\AppData\Local\Temp\ccjjKF9o.ltrans1.ltrans.o: In function `wave_startrecording.lto_priv.221': <artificial>:(.text.wave_startrecording.lto_priv.221+0x794): undefined reference to `memset' <artificial>:(.text.wave_startrecording.lto_priv.221+0x136e): undefined reference to `memset' <artificial>:(.text.wave_startrecording.lto_priv.221+0x14e6): undefined reference to `memset' C:\Users\gena\AppData\Local\Temp\ccjjKF9o.ltrans0.ltrans.o: In function `display_siglevel7.lto_priv.297': <artificial>:(.text.display_siglevel7.lto_priv.297+0x36): undefined reference to `log10f' C:\Users\gena\AppData\Local\Temp\ccjjKF9o.ltrans0.ltrans.o: In function `OTG_FS_IRQHandler': <artificial>:(.text.OTG_FS_IRQHandler+0xfde): undefined reference to `memcpy' C:\Users\gena\AppData\Local\Temp\ccjjKF9o.ltrans0.ltrans.o: In function `ResetException.lto_priv.432': <artificial>:(.text.ResetException.lto_priv.432+0x318): undefined reference to `memcpy' <artificial>:(.text.ResetException.lto_priv.432+0x322): undefined reference to `memset' <artificial>:(.text.ResetException.lto_priv.432+0x247a): undefined reference to `log10f' C:\Users\gena\AppData\Local\Temp\ccjjKF9o.ltrans2.ltrans.o: In function `smanswer': <artificial>:(.text.smanswer+0x26): undefined reference to `log10f' C:\Users\gena\AppData\Local\Temp\ccjjKF9o.ltrans2.ltrans.o: In function `display_bars': <artificial>:(.text.display_bars+0x48): undefined reference to `log10f' <artificial>:(.text.display_bars+0x60): undefined reference to `log10f' C:\Users\gena\AppData\Local\Temp\ccjjKF9o.ltrans3.ltrans.o: In function `single_rate_out_write_mcv.constprop.178': <artificial>:(.text.single_rate_out_write_mcv.constprop.178+0x16): undefined reference to `memset' <artificial>:(.text.single_rate_out_write_mcv.constprop.178+0x24): undefined reference to `memcpy' <artificial>:(.text.single_rate_out_write_mcv.constprop.178+0x30): undefined reference to `memcpy' C:\Users\gena\AppData\Local\Temp\ccjjKF9o.ltrans3.ltrans.o: In function `fir_design_bandpass_freq.constprop.159': <artificial>:(.text.fir_design_bandpass_freq.constprop.159+0x52): undefined reference to `sinf' <artificial>:(.text.fir_design_bandpass_freq.constprop.159+0x5e): undefined reference to `cosf' <artificial>:(.text.fir_design_bandpass_freq.constprop.159+0x7e): undefined reference to `sinf' <artificial>:(.text.fir_design_bandpass_freq.constprop.159+0x8a): undefined reference to `cosf' <artificial>:(.text.fir_design_bandpass_freq.constprop.159+0xac): undefined reference to `sinf' <artificial>:(.text.fir_design_bandpass_freq.constprop.159+0xb8): undefined reference to `cosf' <artificial>:(.text.fir_design_bandpass_freq.constprop.159+0xdc): undefined reference to `sinf' <artificial>:(.text.fir_design_bandpass_freq.constprop.159+0xe8): undefined reference to `cosf' <artificial>:(.text.fir_design_bandpass_freq.constprop.159+0x12c): undefined reference to `cosf' <artificial>:(.text.fir_design_bandpass_freq.constprop.159+0x13a): undefined reference to `cosf' <artificial>:(.text.fir_design_bandpass_freq.constprop.159+0x148): undefined reference to `cosf' <artificial>:(.text.fir_design_bandpass_freq.constprop.159+0x174): undefined reference to `cosf' C:\Users\gena\AppData\Local\Temp\ccjjKF9o.ltrans3.ltrans.o:<artificial>:(.text.fir_design_bandpass_freq.constprop.159+0x180): more undefined references to `cosf' follow C:\Users\gena\AppData\Local\Temp\ccjjKF9o.ltrans3.ltrans.o: In function `agc_forvard_float.isra.10.constprop.4': <artificial>:(.text.agc_forvard_float.isra.10.constprop.4+0x86): undefined reference to `log10f' <artificial>:(.text.agc_forvard_float.isra.10.constprop.4+0x170): undefined reference to `powf' C:\Users\gena\AppData\Local\Temp\ccjjKF9o.ltrans3.ltrans.o: In function `updateboard.isra.35.lto_priv.361': <artificial>:(.text.updateboard.isra.35.lto_priv.361+0x8c4): undefined reference to `memcmp' <artificial>:(.text.updateboard.isra.35.lto_priv.361+0x12b6): undefined reference to `memset' collect2.exe: error: ld returned 1 exit status make.exe: *** [tc1_stm32f746zg_rom.elf] Error 1 NMAKE : fatal error U1077: 'make.exe' : return code '0x2' На Cortex-A9 аналогично, старые проблемы с обвалом компилятора: ../usbd.c: In function 'usbd_handler_nrdy': ../usbd.c:2139:15: warning: variable 'pid' set but not used [-Wunused-but-set-variable] uint_fast8_t pid; ^~~ ../usbd.c: In function 'usbd_handler_brdy8_dcp_out': ../usbd.c:2212:11: warning: unused variable 'count' [-Wunused-variable] unsigned count = usbd_read_data(pipe, ep0databuffout, sizeof ep0databuffout / sizeof ep0databuffout [0]); ^~~~~ ../usbd.c: In function 'usbdFunctionReq_seq3': ../usbd.c:2708:23: warning: unused variable 'terminalID' [-Wunused-variable] const uint_fast8_t terminalID = HI_BYTE(ReqIndex); ^~~~~~~~~~ ../usbd.c: In function 'r7s721_usbi0': ../usbd.c:3493:22: warning: unused variable 'intsts1' [-Wunused-variable] const uint_fast16_t intsts1 = USB200.INTSTS1; ^~~~~~~ ../usbd.c: At top level: ../usbd.c:456:27: warning: 'USBD_DeInit' declared 'static' but never defined [-Wunused-function] static USBD_StatusTypeDef USBD_DeInit(USBD_HandleTypeDef *pdev); ^~~~~~~~~~~ ../usbd.c:457:27: warning: 'USBD_Start' declared 'static' but never defined [-Wunused-function] static USBD_StatusTypeDef USBD_Start (USBD_HandleTypeDef *pdev); ^~~~~~~~~~ ../usbd.c:458:27: warning: 'USBD_RegisterClass' declared 'static' but never defined [-Wunused-function] static USBD_StatusTypeDef USBD_RegisterClass(USBD_HandleTypeDef *pdev,const USBD_ClassTypeDef *pclass); ^~~~~~~~~~~~~~~~~~ ../usbd.c:460:27: warning: 'USBD_RunTestMode' declared 'static' but never defined [-Wunused-function] static USBD_StatusTypeDef USBD_RunTestMode (USBD_HandleTypeDef *pdev); ^~~~~~~~~~~~~~~~ ../usbd.c:461:27: warning: 'USBD_SetClassConfig' declared 'static' but never defined [-Wunused-function] static USBD_StatusTypeDef USBD_SetClassConfig(USBD_HandleTypeDef *pdev, uint8_t cfgidx); ^~~~~~~~~~~~~~~~~~~ ../usbd.c:462:27: warning: 'USBD_ClrClassConfig' declared 'static' but never defined [-Wunused-function] static USBD_StatusTypeDef USBD_ClrClassConfig(USBD_HandleTypeDef *pdev, uint8_t cfgidx); ^~~~~~~~~~~~~~~~~~~ ../usbd.c:533:14: warning: 'configure_device' declared 'static' but never defined [-Wunused-function] static void configure_device(void); ^~~~~~~~~~~~~~~~ ../usbd.c:534:14: warning: 'unconfigure_device' declared 'static' but never defined [-Wunused-function] static void unconfigure_device(void); ^~~~~~~~~~~~~~~~~~ ../usbd.c:535:14: warning: 'single_transmit' declared 'static' but never defined [-Wunused-function] static void single_transmit(uint8_t * buf, uint8_t len); ^~~~~~~~~~~~~~~ ../usbd.c:538:14: warning: 'toLittleEndian' declared 'static' but never defined [-Wunused-function] static void toLittleEndian( uint32_t value, uint8_t * pDestin ); ^~~~~~~~~~~~~~ ../usbd.c:3056:30: warning: 'gSetup' defined but not used [-Wunused-variable] static ALIGNX_BEGIN uint32_t gSetup [12] ALIGNX_END; /*!< Setup packet buffer */ ^~~~~~ ../usbd.c:1959:13: warning: 'nak_ep0' defined but not used [-Wunused-function] static void nak_ep0(void) ^~~~~~~ ../usbd.c:1653:13: warning: 'set_transaction_counter' defined but not used [-Wunused-function] static void set_transaction_counter(uint_fast8_t pipe, uint_fast32_t size) ^~~~~~~~~~~~~~~~~~~~~~~ ../usbd.c:413:27: warning: 'hUsbDevice' defined but not used [-Wunused-variable] static USBD_HandleTypeDef hUsbDevice; ^~~~~~~~~~ ../usbd.c:411:26: warning: 'hpcd_USB_OTG' defined but not used [-Wunused-variable] static PCD_HandleTypeDef hpcd_USB_OTG; ^~~~~~~~~~~~ ../usbd.c:75:22: warning: 'ulmax16' defined but not used [-Wunused-function] static uint_fast16_t ulmax16(uint_fast16_t a, uint_fast16_t B) ^~~~~~~ ../usbd.c:65:16: warning: 'cdcbuffinlevel' defined but not used [-Wunused-variable] static uint8_t cdcbuffinlevel; ^~~~~~~~~~~~~~ ../usbd.c:64:29: warning: 'cdcbuffin' defined but not used [-Wunused-variable] static ALIGNX_BEGIN uint8_t cdcbuffin [VIRTUAL_COM_PORT_DATA_SIZE] ALIGNX_END; ^~~~~~~~~ ../usbd.c:63:29: warning: 'cdcoutbuff' defined but not used [-Wunused-variable] static ALIGNX_BEGIN uint8_t cdcoutbuff [VIRTUAL_COM_PORT_DATA_SIZE] ALIGNX_END; ^~~~~~~~~~ ../usbd.c:61:29: warning: 'uacoutbuff' defined but not used [-Wunused-variable] static ALIGNX_BEGIN uint8_t uacoutbuff [VIRTUAL_AUDIO_PORT_DATA_SIZE_OUT] ALIGNX_END; ^~~~~~~~~~ ../usbd.c:59:22: warning: 'uacinsize' defined but not used [-Wunused-variable] static uint_fast16_t uacinsize = 0; ^~~~~~~~~ ../usbd.c:58:22: warning: 'uacinaddr' defined but not used [-Wunused-variable] static uint_fast32_t uacinaddr = 0; ^~~~~~~~~ ../usbd.c: In function 'usb0_function_SetDescriptor': ../usbd.c:2480:13: internal compiler error: tree check: expected ssa_name, have integer_cst in ptr_deref_may_alias_decl_p, at tree-ssa-alias.c:211 static void usb0_function_SetDescriptor(uint_fast8_t ReqTypeRecip, uint_fast16_t ReqValue, uint_fast16_t ReqIndex, uint_fast16_t ReqLength) ^~~~~~~~~~~~~~~~~~~~~~~~~~~ libbacktrace could not find executable to open Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. make.exe: *** [usbd.o] Error 1 Изменено 15 октября, 2016 пользователем Genadi Zawidowski Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
klen 1 16 октября, 2016 Опубликовано 16 октября, 2016 · Жалоба Свежак со старыми проблемами... пересадил музыкантов местами .. первая проблема должна уйти. проверьте плиз. arm linux64 www.klen.org/Files/DevTools/x86_64-kgp-linux-gnu/arm-kgp-eabi_@_x86_64-kgp-linux-gnu_20161016_PRUNUS.7z arm win64 www.klen.org/Files/DevTools/x86_64-kgp-mingw32/arm-kgp-eabi_@_x86_64-kgp-mingw32_20161016_PRUNUS.7z про вторую проблему надо вспомнить что я делал в прошный раз.... где то что то "отверткой подкрутил" Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
GenaSPB 11 16 октября, 2016 Опубликовано 16 октября, 2016 · Жалоба А чего эти "подкручивания" в виде патчей не сдалать? ps: пока не проверить... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
GenaSPB 11 18 октября, 2016 Опубликовано 18 октября, 2016 (изменено) · Жалоба Тестирую win64 версию для Cortex-M7: Работает в железе. Изменено 18 октября, 2016 пользователем Genadi Zawidowski Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
klen 1 29 октября, 2016 Опубликовано 29 октября, 2016 · Жалоба и как в сравнении с ланчпадовским? скорость размер... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
GenaSPB 11 29 октября, 2016 Опубликовано 29 октября, 2016 (изменено) · Жалоба Скорость с STM32F7xx слегка ниже или такая же. У меня не очень подтверждённое "ошушение", что что-то сломалось в оптимизации для M4.fp - старые платы на STM32F429 перестали работать из-за нехватки ресурсов. Но это на всех компиляторах. Сейчас на столе стоит аппарат с CortexA9, подправил проект чтобы при включении опции -mfpu=neon в обработчике прерываний сохранялся расширенный набор регистров плавающей точки - но похоже, в fir фильтрах сейчас -ftree-vectorize ничего не находит такого что можно было бы утоптать. Это всё на ланчпадововской версии (кстати, они на arm.com переезжают). Ещё, заметил - если гонять на STM32F767 бинарник для STM32F746, скорость выше на 10%. Если указать правильный тип сопроцессора (но использовать single fp) - ещё выше. Правильно поставленные wait states на флэш (у 767 на один такт меньше чем в 746) почти не заметно в моих тестах. Изменено 29 октября, 2016 пользователем Genadi Zawidowski Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
klen 1 19 ноября, 2016 Опубликовано 19 ноября, 2016 · Жалоба свежак linux64 www.klen.org/Files/DevTools/x86_64-kgp-linux-gnu/arm-kgp-eabi_@_x86_64-kgp-linux-gnu_20161119_RIBES.7z win64 www.klen.org/Files/DevTools/x86_64-kgp-mingw32/arm-kgp-eabi_@_x86_64-kgp-mingw32_20161119_RIBES.7z 2_Genadi Zawidowski Здравствуйте Геннадий! Ваш волшебный исходник нужно использовать в виде теста :) данная сборка его пережевывет но только не с -Ofast и -O3: wine /opt/home/cross/x86_64-kgp-mingw32/arm-kgp-eabi/arm-kgp-eabi/bin/arm-kgp-eabi-gcc -c -mcpu=cortex-a9 -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16 -fno-math-errno -funroll-loops -fgraphite -ffunction-sections -fdata-sections -ffat-lto-objects -Ofast -flto -gdwarf-2 -fomit-frame-pointer -Wall -Wstrict-prototypes -DNDEBUG=1 -DCPUSTYLE_R7S721=1 -DCPUSTYLE_R7S721020=1 -MD -MP -MF -c usbd.c -o usbd.o -Os ../usbd.c: В функции «usbd_handler_nrdy»: ../usbd.c:2112:28: предупреждение: неиспользуемая переменная «PIPEnCTR» [-Wunused-variable] ../usbd.c: В функции «usbd_handler_brdy8_dcp_out»: ../usbd.c:2142:11: предупреждение: неиспользуемая переменная «count» [-Wunused-variable] ../usbd.c: В функции «usbdFunctionReq_seq3»: ../usbd.c:2638:23: предупреждение: неиспользуемая переменная «terminalID» [-Wunused-variable] ../usbd.c: В функции «r7s721_usbi0»: ../usbd.c:3423:22: предупреждение: неиспользуемая переменная «intsts1» [-Wunused-variable] ../usbd.c: На верхнем уровне: ../usbd.c:445:27: предупреждение: «USBD_DeInit» объявлена «static», но нигде не определена [-Wunused-function] ../usbd.c:446:27: предупреждение: «USBD_Start» объявлена «static», но нигде не определена [-Wunused-function] ../usbd.c:447:27: предупреждение: «USBD_RegisterClass» объявлена «static», но нигде не определена [-Wunused-function] ../usbd.c:449:27: предупреждение: «USBD_RunTestMode» объявлена «static», но нигде не определена [-Wunused-function] ../usbd.c:450:27: предупреждение: «USBD_SetClassConfig» объявлена «static», но нигде не определена [-Wunused-function] ../usbd.c:451:27: предупреждение: «USBD_ClrClassConfig» объявлена «static», но нигде не определена [-Wunused-function] ../usbd.c:522:13: предупреждение: «configure_device» объявлена «static», но нигде не определена [-Wunused-function] ../usbd.c:523:13: предупреждение: «unconfigure_device» объявлена «static», но нигде не определена [-Wunused-function] ../usbd.c:524:13: предупреждение: «single_transmit» объявлена «static», но нигде не определена [-Wunused-function] ../usbd.c:527:13: предупреждение: «toLittleEndian» объявлена «static», но нигде не определена [-Wunused-function] ../usbd.c:2986:47: предупреждение: «gSetup» defined but not used [-Wunused-variable] ../usbd.c:1943:13: предупреждение: «nak_ep0» defined but not used [-Wunused-function] ../usbd.c:1640:13: предупреждение: «set_transaction_counter» defined but not used [-Wunused-function] ../usbd.c:402:27: предупреждение: «hUsbDevice» defined but not used [-Wunused-variable] ../usbd.c:400:26: предупреждение: «hpcd_USB_OTG» defined but not used [-Wunused-variable] ../usbd.c:75:22: предупреждение: «ulmax16» defined but not used [-Wunused-function] ../usbd.c:64:16: предупреждение: «cdcbuffinlevel» defined but not used [-Wunused-variable] ../usbd.c:63:46: предупреждение: «cdcbuffin» defined but not used [-Wunused-variable] ../usbd.c:62:46: предупреждение: «cdcoutbuff» defined but not used [-Wunused-variable] ../usbd.c:60:46: предупреждение: «uacoutbuff» defined but not used [-Wunused-variable] ../usbd.c:58:22: предупреждение: «uacinaddr» defined but not used [-Wunused-variable] klen@ubuntu:/tmp$ arm-kgp-eabi-gcc -c -mcpu=cortex-a9 -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16 -fno-math-errno -funroll-loops -fgraphite -ffunction-sections -fdata-sections -ffat-lto-objects -Ofast -flto -gdwarf-2 -fomit-frame-pointer -Wall -Wstrict-prototypes -DNDEBUG=1 -DCPUSTYLE_R7S721=1 -DCPUSTYLE_R7S721020=1 -MD -MP -MF -c usbd.c -o usbd.o -Os ../usbd.c: В функции «usbd_handler_nrdy»: ../usbd.c:2112:28: предупреждение: неиспользуемая переменная «PIPEnCTR» [-Wunused-variable] ../usbd.c: В функции «usbd_handler_brdy8_dcp_out»: ../usbd.c:2142:11: предупреждение: неиспользуемая переменная «count» [-Wunused-variable] ../usbd.c: В функции «usbdFunctionReq_seq3»: ../usbd.c:2638:23: предупреждение: неиспользуемая переменная «terminalID» [-Wunused-variable] ../usbd.c: В функции «r7s721_usbi0»: ../usbd.c:3423:22: предупреждение: неиспользуемая переменная «intsts1» [-Wunused-variable] ../usbd.c: На верхнем уровне: ../usbd.c:445:27: предупреждение: «USBD_DeInit» объявлена «static», но нигде не определена [-Wunused-function] ../usbd.c:446:27: предупреждение: «USBD_Start» объявлена «static», но нигде не определена [-Wunused-function] ../usbd.c:447:27: предупреждение: «USBD_RegisterClass» объявлена «static», но нигде не определена [-Wunused-function] ../usbd.c:449:27: предупреждение: «USBD_RunTestMode» объявлена «static», но нигде не определена [-Wunused-function] ../usbd.c:450:27: предупреждение: «USBD_SetClassConfig» объявлена «static», но нигде не определена [-Wunused-function] ../usbd.c:451:27: предупреждение: «USBD_ClrClassConfig» объявлена «static», но нигде не определена [-Wunused-function] ../usbd.c:522:13: предупреждение: «configure_device» объявлена «static», но нигде не определена [-Wunused-function] ../usbd.c:523:13: предупреждение: «unconfigure_device» объявлена «static», но нигде не определена [-Wunused-function] ../usbd.c:524:13: предупреждение: «single_transmit» объявлена «static», но нигде не определена [-Wunused-function] ../usbd.c:527:13: предупреждение: «toLittleEndian» объявлена «static», но нигде не определена [-Wunused-function] ../usbd.c:2986:47: предупреждение: «gSetup» defined but not used [-Wunused-variable] ../usbd.c:1943:13: предупреждение: «nak_ep0» defined but not used [-Wunused-function] ../usbd.c:1640:13: предупреждение: «set_transaction_counter» defined but not used [-Wunused-function] ../usbd.c:402:27: предупреждение: «hUsbDevice» defined but not used [-Wunused-variable] ../usbd.c:400:26: предупреждение: «hpcd_USB_OTG» defined but not used [-Wunused-variable] ../usbd.c:75:22: предупреждение: «ulmax16» defined but not used [-Wunused-function] ../usbd.c:64:16: предупреждение: «cdcbuffinlevel» defined but not used [-Wunused-variable] ../usbd.c:63:46: предупреждение: «cdcbuffin» defined but not used [-Wunused-variable] ../usbd.c:62:46: предупреждение: «cdcoutbuff» defined but not used [-Wunused-variable] ../usbd.c:60:46: предупреждение: «uacoutbuff» defined but not used [-Wunused-variable] ../usbd.c:58:22: предупреждение: «uacinaddr» defined but not used [-Wunused-variable] компиляется. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
klen 1 4 декабря, 2016 Опубликовано 4 декабря, 2016 · Жалоба свежак arm host win64 www.klen.org/Files/DevTools/x86_64-kgp-mingw32/arm-kgp-eabi_@_x86_64-kgp-mingw32_20161204_HELIANTHUS.7z host linux64 www.klen.org/Files/DevTools/x86_64-kgp-linux-gnu/arm-kgp-eabi_@_x86_64-kgp-linux-gnu_20161204_HELIANTHUS.7z Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Terminator 0 30 декабря, 2016 Опубликовано 30 декабря, 2016 · Жалоба Вернулся к относительно старому проекту. "свежаками" не собирается. /tmp/ccby68ut.s: Assembler messages: /tmp/ccby68ut.s:3065: Error: offset out of range lto-wrapper: fatal error: /opt/arm-kgp-eabi/bin/arm-kgp-eabi-g++ returned 1 exit status compilation terminated. /opt/arm-kgp-eabi_20161204/bin/../lib/gcc/arm-kgp-eabi/7.0.0/../../../../arm-kgp-eabi/bin/ld: error: lto-wrapper failed Это загрузчик, без lto не влезал в заданный размер. Раньше собирался каким-то из вариантов bleeding-edge. "Отматывал" скачанные "свежаки", собрался только "<< HYPERICUM >> 6.0.0 20151208". Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться