GCC ARM Embedded is 'n oop bron en vrylik verspreide sagteware wat 'n voorafgeboude GNU toolchain bevat vir ARM Cortex-R en Cortex-M verwerkers. Die projek het ten doel om die GNU Tools aan ARM Embedded Processors te bring, wat ontwikkelaars help met verskeie samestellingstake.
Ondersteun alle belangrike Cortex ARM verwerkers
Die sagteware is van die grond geskep om al die belangrike Cortex ARM verwerkers te ondersteun, insluitend Cortex-R4, Cortex-R5, Cortex-R7, Cortex-M3, Cortex-M4, Cortex-M7, Cortex-M0 + en Cortex-M0.
Onderhou deur die ARM-werknemers, is die GCC ARM Embedded sagteware deel van 'n voortdurende verbintenis om die GNU Compiler Collection (GCC) ondersteuning vir die ARM argitektuur te verbeter en te onderhou.
Aan die begin met GCC ARM Embedded
Om die GCC ARM Embedded sagteware op u GNU / Linux-rekenaar te gebruik, moet u die binêre pakket aflaai, wat al die voorafgeboude binêre programme bevat wat u moet begin. Stoor die argief êrens op u rekenaar, verkieslik u tuisgids, gebruik 'n argiefbestuurder nut om die inhoud daarvan te onttrek.
Open dan 'n Terminal app en navigeer na die plek waar jy die argieflêer onttrek het (bv. cd / home / softoware / gcc-arm-none-eabi-4_9-2014q4). Alle binêre lêers is op die & bin; rsquo; gids.
Beskikbaarheid en ondersteunde hardeware platforms
GCC ARM Embedded word versprei as binêre en bron argiewe, sowel as 'n PPA repository vir die nuutste weergawes van die Ubuntu Linux bedryfstelsel, wat beide 32- en 64-bis-argitekture ondersteun. Let wel: die sagteware is ook versoenbaar met die Mac OS X- en Microsoft Windows-bedryfstelsels.
Wat is nuut in hierdie weergawe:
- Vaste powf / expf / exp2f / logf / log2f prestasie regressie
- Bygevoeg ondersteuning vir Arm Cortex-M33 sonder DSP via -mcpu = cortex-m33 + nodsp
- Toegevoegde Armv8-R multilib mappings
- Vereis bou vereistes vir GDB tui ondersteuning
- Aktiveer C99 IO-formaat spesifiseerder in newlib
- Vaste cmse_nonsecure_caller Armv8-M Veiligheid Uitbreiding intrinsiek
- Fix crash in __builtin_arm_set_fpscr GCC builtin
- LTO bug https://bugs.launchpad.net/gcc-arm-embedded/+bug/1747966 is in vorige weergawe opgelos. Stel die nota vry om die verandering te weerspieël.
- Vaste probleem met die bou van libgcc se cmse.c sonder opskrifte
- Vaste probleem met arm_cmse.h C99-verenigbaarheid
Wat is nuut in weergawe 7-2017-q4:
- Armv8-R en Cortex-R52 ondersteuning .
- Fix https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69866
- GDB gebou met C ++ geskik vir Mac OS X
Wat is nuut in weergawe 6.2:
- Features:
- Alle GCC 6-funksies, plus die nuutste hooflynekenmerke:
- Volledige ARMv8-M-ondersteuning, insluitende atoom- en sekuriteitsuitbreidings
- ARMV7-M en ARMv8-M Baseline en Mainline
- Intrinsieke ondersteuning van mede-verwerkers
- Cortex-M23 en Cortex-M33 ondersteuning
- -mumbel opsioneel vir Cortex-M toestelle
- Ondersteuning vir OS-retargeting van sluitingsroetines in newlib
- Gevorderde SIMD-geoptimaliseerde memchr implementering in newlib
- Stel instellings vir Windows-installeerder op die reëllyn in.
- Belangrike veranderinge in 6 update 2 release:
- GCC aanvaar verkeerd Cortex-r [578] het 64-bits enkel-kopie atoom LDRD https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80082
- LDR pseudo-op genereer MOVS https://bugs.launchpad.net/gcc-arm-embedded/+bug/1682620
- Vaste FPSCR getter en setter builtins
- SG-invoerbiblioteke wat as uitvoerbaar gemaak is, is nou vasgestel om te verplaasbaar
- Stel instellings vir Windows-installeerder op die reëllyn in.
- PURECODE ondersteuning aangeskakel vir ARMv8-M.Baseline
- Gevorderde SIMD-geoptimaliseerde memchr implementering in newlib
Wat is nuut in weergawe 5.4:
- Nuwe funksies:
- ARMv8-M Baseline en Mainline beta ondersteuning:
- ARMv8-M Basis Atoom Ondersteuning
- ARM PureCode ondersteuning
- Duim-2 lang takveneers
- Belangrike foute in 5 update 3 release:
- Spesiale registers MSP_S en PSP_S MRS / MSR verwyder
- Vaste duim weergawe opsporing in fineer generasie
- Vaste dokumentasie oor newlib-nano in release.txt
Wat is nuut in weergawe 5.3:
- Kenmerke:
- Alle GCC 5-funksies, plus die nuutste hooflynekenmerke:
- Cortex-R8 ondersteuning
- Prestasie tuning Cortex-M7
- optimalisering van handige klein endiese en groot endiese vragte
- verbeterde sprongdreading wat die noodsaaklikheid van 'n vinnige skakel-snelkoppeling verwyder
- ARMv8-M Baseline en Mainline alfa-ondersteuning:
- Atoom nie ingesluit vir ARMv8-M Baseline
- ARMv8-M Security Extensions Alpha-ondersteuning
- Duim-1 biblioteek optimalisaties:
- https://gcc.gnu.org/ml/gcc-patches/2015-10/msg01282.html
- CRC-optimalisering:
- https://gcc.gnu.org/ml/gcc-patches/2015-11/msg02046.html
- Kleiner beëindiger hanteerder vir newlib-nano
Wat is nuut in weergawe 5.2:
- Alle GCC 5-funksies, plus die nuutste hooflynkenmerke:
- Prestasie tuning Cortex-M7
- optimalisering van handige klein endiese en groot endiese vragte
- verbeterde sprongdreading wat die noodsaaklikheid van 'n vinnige skakel-snelkoppeling verwyder
- ARMv8-M Baseline en Mainline alfa-ondersteuning:
- Atoom nie ingesluit vir ARMv8-M Baseline
- ARMv8-M Veiligheid Uitbreidings word slegs ondersteun vir die samestelling en basiese koppeling
- Duim-1 biblioteek optimalisasies
- https://gcc.gnu.org/ml/gcc-patches/2015-10/msg01282.html
- optimalisering van CRC
- https://gcc.gnu.org/ml/gcc-patches/2015-11/msg02046.html
Wat is nuut in weergawe 4.9 Update 3:
- Features:
- Alle GCC 4.9-funksies, plus die nuutste hooflynekenmerke
- Cortex-M7 ondersteuning
- Klein vermenigvuldiging van ondersteuning met opsies:
- . -mcpu = korteks-m1.small-vermeerder
- . -mcpu = korteks-m0.small-vermeerder
- . -mcpu = korteks-m0plus.small-vermeerder
- Toegewyde multilib vir Cortex-M7
- - cortex-m7
- - cortex-m7 / fpu / fpv5-d16
- - korteks-m7 / fpu / fpv5-sp-d16
- - cortex-m7 / softfp / fpv5-d16
- - cortex-m7 / softfp / fpv5-sp-d16
- Definieer aeabi_memcpy en aeabi_memcpy4 roetines in newlib.
- Definieer aeabi_memmove, aeabi_memset en aeabi_memclr roetines in newlib.
- Duim-1 biblioteek optimalisaties.
- Bykomende kode grootte optimalisering.
- Voeg gdb-python-bou (arm-geen-eabi-gdb-py).
- Object lêer sonder attribuut afdeling kan gekoppel word aan enige ander.
- Die opsies -mapcs, -mapcs-raam, -mtpcs-raam en -mtpcs-blaarraam sal verval word in gcc 5.0, dus beveel om dit te vermy.
- Belangrike foute opgelos in 4.9 update 3 release:
- Newlib-formaat spesifiseerder mismatch fix. https://answers.launchpad.net/gcc-arm-embedded/+question/269083
- Newlib-makro-mismatch-oplossing. https://answers.launchpad.net/gcc-arm-embedded/+question/269177
- Assembler encoding bug fix. https://sourceware.org/ml/binutils/2015-08/msg00028.html
Wat is nuut in weergawe 4.9 Update 2:
- Features:
- Alle GCC 4.9-funksies, plus die nuutste hooflynekenmerke
- Cortex-M7 ondersteuning
- Klein vermenigvuldiging van ondersteuning met opsies:
- -mcpu = korteks-m1.small-vermeerder
- -mcpu = korteks-m0.small-vermeerder
- -mcpu = korteks-m0plus.small-vermeerder
- Toegewyde multilib vir Cortex-M7:
- korteks-M7
- korteks-M7 / FPU / fpv5-D16
- korteks-M7 / FPU / fpv5-sp-D16
- korteks-M7 / softfp / fpv5-D16
- korteks-M7 / softfp / fpv5-sp-D16
- Definieer aeabi_memcpy en aeabi_memcpy4 roetines in newlib.
- Definieer aeabi_memmove, aeabi_memset en aeabi_memclr roetines in newlib.
- Duim-1 biblioteek optimalisaties.
- Bykomende kode grootte optimalisering.
- Voeg gdb-python-bou (arm-geen-eabi-gdb-py).
- Object lêer sonder attribuut afdeling kan gekoppel word aan enige ander.
- Die opsies -mapcs, -mapcs-raam, -mtpcs-raam en -mtpcs-blaarraam sal verval word in gcc 5.0, dus beveel om dit te vermy.
- Belangrike foute opgelos in 4.9 update 2 release:
- Opgedateer 'n paar inlyn vergadering kode in Newlib om te werk met ou doelwitte https://www.sourceware.org/ml/newlib/2015/msg00386.html
- Vermy vermorsing as gevolg van seksiegrootte-bevordering https://answers.launchpad.net/gcc-arm-embedded/+question/262160
- Plaaslike register veranderlikes werk nie korrek met inline asm operands https://bugs.launchpad.net/gcc-arm-embedded/+bug/1411655
Wat is nuut in weergawe 4.9 Update 1:
- Features:
- Alle GCC 4.9-funksies, plus die nuutste hooflynekenmerke
- - Cortex-M7 ondersteuning
- - Klein vermenigvuldig ondersteuning met opsies:
- . -mcpu = korteks-m1.small-vermeerder
- . -mcpu = korteks-m0.small-vermeerder
- . -mcpu = korteks-m0plus.small-vermeerder
- Toegewyde multilib vir Cortex-M7
- - cortex-m7
- - cortex-m7 / fpu / fpv5-d16
- - korteks-m7 / fpu / fpv5-sp-d16
- - cortex-m7 / softfp / fpv5-d16
- - cortex-m7 / softfp / fpv5-sp-d16
- Definieer aeabi_memcpy en aeabi_memcpy4 roetines in newlib.
- Definieer aeabi_memmove, aeabi_memset en aeabi_memclr roetines in newlib.
- Duim-1 biblioteek optimalisaties.
- Bykomende kode grootte optimalisering.
- Voeg gdb-python-bou (arm-geen-eabi-gdb-py).
- Object lêer sonder attribuut afdeling kan gekoppel word aan enige ander.
- Die opsies -mapcs, -mapcs-raam, -mtpcs-raam en -mtpcs-blaarraam sal verval word in gcc 5.0, dus beveel om dit te vermy.
- Belangrike foute opgelos in 4.9 update 1 release:
- LD backport om nul lengte-afdeling in die finale axf-lêer te hou
- Bevestig GDB-ongeluk as gevolg van die verwerping van die gegroepeerde ontfoutingsafdelings
- Voeg 'n Thumb1 insn-patroon by om die instruksie wat PC na lae register beweeg, te wettig.
- Update GCC om Tag_ABI_HardFP_use te genereer volgens die nuutste EABI-dokument
- Live hoë register nie gestoor in funksie prolog met -Os
- - var-info-pad-uitdrukking misluk vir geneste strukture
Wat is nuut in weergawe 4.9:
- Tak na simbool gedefinieer in linkerskrif http: // sourceware org / Bugzilla / show_bug.cgi? id = 15.302
- GDB is opgradeer na 7.6 om dwarf-3 en later standaard te ondersteun https://answers.launchpad.net/gcc-arm-embedded/+question/234131 https://bugs.launchpad.net/gcc-arm -embedded / + bug / 1248981
- ICE wanneer hoë register gebruik word as PIC basisregister vir duim-1 teiken
Wat is nuut in weergawe 4.7 Update 3:
- Crash wanneer vaste punt-app saamgestel word met LTO https : //answers.launchpad.net/gcc-arm-embedded/+question/235582
- Tak vir teiken wat deur 'n skripsimbool van die skrywer gestel word https://sourceware.org/bugzilla/show_bug.cgi?id=15302
- Windows hosted gdb hang by 'n breekpunt https://bugs.launchpad.net/gcc-arm-embedded/+bug/1197615
- Nano ontbrekende verwysing na _mallopt_r https://mbed.org/forum/mbed/topic/2701/?page=3#comment-22549
Wat is nuut in weergawe 4.7 Update 2:
- Upgrade doc / *. texi na die nuutste texinfo pakket https: // answers.launchpad.net/gcc-arm-embedded/+question/227685
- Fix ICE met -mtune opsie https://answers.launchpad.net/gcc-arm-embedded/+question/227667
- Fix -debug-opsie in die bou van script https://answers.launchpad.net/gcc-arm-embedded/+question/229127
- Los onnodige lr stoor in duim1 blaar funksie
Wat is nuut in weergawe 4.7 Update 1:
- Met hierdie update word 'n paar probleme opgelos. 4.7 hoofvak:
- Die Mac OS-host weergawe het python afhanklikheid
- LTO-mislukking wanneer dit geïnstalleer is in die gids met die ruimte in die padnaam http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50293
- Laai adres van data afdelings wat gebalanseerde data bevat http://sourceware.org/bugzilla/show_bug.cgi?id=15222
- libnosys kyk nie na stapel oorloop https://answers.launchpad.net/gcc-arm-embedded/+question/218972
- librdimon.a stem nie ooreen met newlib-nano
- Dit kry ook die boukonfigurasie aangepas om in staat te stel:
- Basiese Cortex-A-profiel multilib
- LTO (Link Time Optimization)
Kommentaar nie gevind