GCC ARM Embedded

Software kuvakaappaus:
GCC ARM Embedded
Ohjelmiston tiedot:
Versio: 7-2018-q2 Päivitetty
Lähetyksen päivämäärä: 17 Aug 18
Lupa: Vapaa
Suosio: 221

Rating: 3.3/5 (Total Votes: 4)

GCC ARM Embedded on avoimen lähdekoodin ja vapaasti levitettävän ohjelmiston, joka sisältää ennalta valmistetun GNU-työkalukansi ARM Cortex-R- ja Cortex-M-prosessoreille. Projekti pyrkii tuomaan GNU-työkalut ARM-sulautettuihin prosessoreihin, jotka auttavat kehittäjiä erilaisilla kokoamiskohteilla.


Tukee kaikkia tärkeitä Cortex ARM -suorittimia

Ohjelmisto on luotu lähtien tukemaan kaikkia tärkeitä Cortex ARM -suorittimia, kuten Cortex-R4, Cortex-R5, Cortex-R7, Cortex-M3, Cortex-M4, Cortex-M7, Cortex-M0 + ja Cortex-M0.

ARM-työntekijöiden ylläpitämä GCC ARM Embedded -ohjelma on osa jatkuvaa sitoutumista parantaa ja ylläpitää GNU Compiler Collection (GCC) -tuotetta ARM-arkkitehtuurille.


Aloittaminen GCC ARM Embedded -ohjelmistolla

Jos haluat käyttää GCC ARM Embedded -ohjelmistoa GNU / Linux-tietokoneellesi, lataa binääri-paketti, joka sisältää kaikki valmiiksi rakennetut binäärit, jotka sinun on aloitettava. Tallenna arkisto jonnekin tietokoneellesi, mieluiten kotihakemistasi, käytä arkistonhallinta-apuohjelmaa sen sisällön poistamiseen.

Avaa Terminal -sovellus ja siirry sen sijainnin kohdalle, josta olet lisännyt arkistotiedoston (esim. cd / home / softoware / gcc-arm-none-eabi-4_9-2014q4). Kaikki binäärit sijaitsevat & lsquo; bin & rsquo; kansio.


Saatavuus ja tuetut laitealustat

GCC ARM Embedded toimitetaan binääri- ja lähdetiedostoina sekä Ubuntun Linux-käyttöjärjestelmän viimeisimpien julkaisujen PPA-arkistoon, joka tukee sekä 32- että 64-bittisiä arkkitehtuureita. Huomaa, että ohjelmisto on yhteensopiva Mac OS X- ja Microsoft Windows -käyttöjärjestelmien kanssa.

Mitä uutta on tässä versiossa:

  • Kiinteä powf / expf / exp2f / logf / log2f suorituskyvyn regressio
  • Lisätty tuki Arm Cortex-M33: lle ilman DSP: tä kautta -mcpu = cortex-m33 + nodsp
  • Lisätty Armv8-R multilib -määritykset
  • Räätälöi tarvittavat vaatimukset GDB tui -tuelle
  • Käytetty C99 IO -formaatin määritteli newlib
  • Kiinteä cmse_nonsecure_caller Armv8-M Security Extension inherent
  • Korjaa kaatuminen __builtin_arm_set_fpscr GCC sisäänrakennettu
  • LTO-virhe https://bugs.launchpad.net/gcc-arm-embedded/+bug/1747966 korjattiin aiemmassa versiossa. Julkaisutiedosto päivitettiin muutoksen huomioon ottamiseksi.
  • Kiinteä ongelma rakentamalla libgcc: n cmse.c ilman otsikoita
  • Kiinteä ongelma arm_cmse.h C99 -yhteensopivuuden kanssa

    • Armv8-R- ja Cortex-R52-tuki .
    • Korjaa https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69866
    • GDB on rakennettu C ++ -ohjelmalla, joka on käytössä Mac OS X: ssä

    Uutta versiossa 6.2:

    • Ominaisuudet:
    • Kaikki GCC 6 -ominaisuudet sekä viimeisimmät pääominaisuudet:
    • Täysi ARMv8-M-tuki, mukaan lukien atomi- ja tietoturva-laajennukset
    • ARM PURECODE-tuki ARMv7-M: lle ja ARMv8-M: n perusviivalle ja päärekisterille
    • Yhteisprosessorin sisäinen tuki
    • Cortex-M23 ja Cortex-M33 -tuki
    • -mthumb valinnainen Cortex-M-laitteille
    • Tuki newlibin lukitusrutiineihin OS: n uudelleensuunnittelulle
    • Kehittynyt SIMD-optimoidun memchr-toteutuksen newlib-sovelluksessa
    • Ota käyttöön Windowsin asennusohjelman asetusvaihtoehdot komentorivillä
    • Tärkeitä muutoksia 6 päivityksen 2 julkaisussa:
    • GCC virheellisesti olettaa, että Cortex-r [578] on 64-bittinen yhden kopion atomi LDRD https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80082
    • LDR pseudo-op luo MOVS: n https://bugs.launchpad.net/gcc-arm-embedded/+bug/1682620
    • Kiinteät FPSCR-getter ja setter builtins
    • SG tuontikirjastot, jotka luotiin suoritettaviksi, nyt vahvistettu uudelleensijoittaviksi
    • Ota käyttöön Windowsin asennusohjelman asetusvaihtoehdot komentorivillä
    • PURECODE-tuki on käytössä ARMv8-M.Baseline
    • Kehittynyt SIMD-optimoidun memchr-toteutuksen newlib-sovelluksessa

    Uutta versiossa 5.4:

    • Uudet ominaisuudet:
    • ARMv8-M Baseline ja Mainline beta -tuki:
    • ARMv8-M: n lähtötason atomituki
    • ARM PureCode-tuki
    • Thumb-2 pitkät oksat viilut
    • Tärkeät bugit, jotka on määritetty 5 päivityksen 3 julkaisussa:
    • Poistetaan MSP_S- ja PSP_S-MRS / MSR-rekisterit
    • Kiinteä Thumb-versio havainnointi viilun tuottamisessa
    • Kiinteät dokumentit newlib-nanosta julkaisussa release.txt

    Uutta versiossa 5.3:

    • Ominaisuudet:
    • Kaikki GCC 5 -ominaisuudet sekä viimeisimmät pääominaisuudet:
    • Cortex-R8 -tuki
    • Cortex-M7 -toiminnon viritys
    • manuaalisen pienen endian ja suuren endian-kuormituksen optimointi
    • parannettu hyppyviimeistely, joka poistaa tarpeettomuuden -vaihtopyyhkäisyn
    • ARMv8-M-perusviiva ja Mainline-alfa-tuki:
    • Atomiat eivät sisälly ARMv8-M-lähtötasoon
    • ARMv8-M-tietoturvapäivitykset Alpha -tuki
    • Thumb-1-kirjaston optimoinnit:
    • https://gcc.gnu.org/ml/gcc-patches/2015-10/msg01282.html
    • CRC-optimointi:
    • https://gcc.gnu.org/ml/gcc-patches/2015-11/msg02046.html
    • Pienempi lopetuskäsittelijä newlib-nanolle

    Uutta versiossa 5.2:

    • Kaikki GCC 5 -ominaisuudet sekä viimeisimmät mainline-ominaisuudet:
    • Cortex-M7 -toiminnon viritys
    • manuaalisen pienen endian ja suuren endian-kuormituksen optimointi
    • parannettu hyppyviimeistely, joka poistaa tarpeettomuuden -vaihtopyyhkäisyn
    • ARMv8-M-perusviiva ja Mainline-alfa-tuki:
    • Atomiat eivät sisälly ARMv8-M-lähtötasoon
    • ARMv8-M-tietoturva-laajennukset, joita tuetaan vain kokoamisen ja perusliitoksen yhdistämiseen
    • Thumb-1-kirjaston optimoinnit
    • https://gcc.gnu.org/ml/gcc-patches/2015-10/msg01282.html
    • CRC-optimointi
    • https://gcc.gnu.org/ml/gcc-patches/2015-11/msg02046.html

    Uutta version 4.9 päivityksessä 3:

    • Ominaisuudet:
    • Kaikki GCC 4.9 -ominaisuudet sekä viimeisimmät pääominaisuudet
    • Cortex-M7-tuki
    • Pieni moninkertainen tuki vaihtoehtoilla:
    • . -mcpu = aivokuori-m1.small-moninkertaisesti
    • . -mcpu = aivokuori-m0.small-moninkertaisesti
    • . -mcpu = aivokuori-m0plus.small-moninkertaisesti
    • Cortex-M7: n omistettu multilib
    • - cortex-m7
    • - cortex-m7 / fpu / fpv5-d16
    • - cortex-m7 / fpu / fpv5-sp-d16
    • - cortex-m7 / softfp / fpv5-d16
    • - cortex-m7 / softfp / fpv5-sp-d16
    • Määritä aeabi_memcpy ja aeabi_memcpy4 rutiinit newlib: ssä.
    • Määrittele aeabi_memmove, aeabi_memset ja aeabi_memclr rutiineja newlib: ssä.
    • Thumb-1-kirjaston optimointi.
    • Lisäkoodikokooptimoinnit.
    • Lisää gdb python -rakenne (arm-none-eabi-gdb-py).
    • Objektitiedosto ilman attribuuttiosaa voidaan yhdistää mihinkään muuhun.
    • Asetukset -mapcs, -mapcs-frame, -mtpcs-frame ja -mtpcs-leaf-frame poistetaan käytöstä gcc 5.0: ssä, joten suosittelemme välttämään niitä.
    • Tärkeät bugit, jotka on korjattu 4.9 päivityksen 3 julkaisussa:
    • Newlib-muodon määrittimen yhteensopimattomuus. https://answers.launchpad.net/gcc-arm-embedded/+question/269083
    • Newlib makron yhteensopimattomuus. https://answers.launchpad.net/gcc-arm-embedded/+question/269177
    • Assembler koodaa virheenkorjausta. https://sourceware.org/ml/binutils/2015-08/msg00028.html

    Uutta version 4.9 päivityksessä 2:

    • Ominaisuudet:
    • Kaikki GCC 4.9 -ominaisuudet sekä viimeisimmät pääominaisuudet
    • Cortex-M7-tuki
    • Pieni moninkertainen tuki vaihtoehtoilla:
    • -mcpu = aivokuori-m1.small-moninkertaisesti
    • -mcpu = aivokuori-m0.small-moninkertaisesti
    • -mcpu = aivokuori-m0plus.small-moninkertaisesti
    • Cortex-M7: lle omistettu multilib:
    • cortex-M7
    • cortex-M7 / FPU / fpv5-D16
    • cortex-M7 / FPU / fpv5-SP-D16
    • cortex-M7 / softfp / fpv5-D16
    • cortex-M7 / softfp / fpv5-SP-D16
    • Määritä aeabi_memcpy ja aeabi_memcpy4 rutiinit newlib: ssä.
    • Määrittele aeabi_memmove, aeabi_memset ja aeabi_memclr rutiineja newlib: ssä.
    • Thumb-1-kirjaston optimointi.
    • Lisäkoodikokooptimoinnit.
    • Lisää gdb python -rakenne (arm-none-eabi-gdb-py).
    • Objektitiedosto ilman attribuuttiosaa voidaan yhdistää mihinkään muuhun.
    • Asetukset -mapcs, -mapcs-frame, -mtpcs-frame ja -mtpcs-leaf-frame poistetaan käytöstä gcc 5.0: ssä, joten suosittelemme välttämään niitä.
    • Tärkeät virheet, jotka on korjattu 4.9 päivityksen 2 julkaisussa:
    • Päivitetty joitakin inline-kokoonpanokoodia Newlibissä vanhojen kohteiden kanssa https://www.sourceware.org/ml/newlib/2015/msg00386.html
    • Vältä hukkumääriä, jotka johtuvat leikkauskokoa edistävistä tiedoista https://answers.launchpad.net/gcc-arm-embedded/+question/262160
    • Paikalliset rekisterimuuttujat eivät toimi oikein inline asm -operandien kanssa https://bugs.launchpad.net/gcc-arm-embedded/+bug/1411655

    Uutta versiossa 4.9 Päivitys 1:

    • Ominaisuudet:
    • Kaikki GCC 4.9 -ominaisuudet sekä viimeisimmät pääominaisuudet
    • - Cortex-M7-tuki
    • - Pieni moninkertainen tuki vaihtoehtoilla:
    • . -mcpu = aivokuori-m1.small-moninkertaisesti
    • . -mcpu = aivokuori-m0.small-moninkertaisesti
    • . -mcpu = aivokuori-m0plus.small-moninkertaisesti
    • Cortex-M7: n omistettu multilib
    • - cortex-m7
    • - cortex-m7 / fpu / fpv5-d16
    • - cortex-m7 / fpu / fpv5-sp-d16
    • - cortex-m7 / softfp / fpv5-d16
    • - cortex-m7 / softfp / fpv5-sp-d16
    • Määritä aeabi_memcpy ja aeabi_memcpy4 rutiinit newlib: ssä.
    • Määrittele aeabi_memmove, aeabi_memset ja aeabi_memclr rutiineja newlib: ssä.
    • Thumb-1-kirjaston optimointi.
    • Lisäkoodikokooptimoinnit.
    • Lisää gdb python -rakenne (arm-none-eabi-gdb-py).
    • Objektitiedosto ilman attribuuttiosaa voidaan yhdistää mihinkään muuhun.
    • Asetukset -mapcs, -mapcs-frame, -mtpcs-frame ja -mtpcs-leaf-frame poistetaan käytöstä gcc 5.0: ssä, joten suosittelemme välttämään niitä.
    • Tärkeät virheet, jotka on korjattu 4.9 päivityksen 1 julkaisussa:
    • LD-takaisinportti pitämään nollapituuden osaa lopullisessa axf-tiedostossa
    • Räätälöidyt virheenkorjausosat pois käytöstä
    • korjaa GDB-kaatuminen

    • Lisää Thumb1 insn -kuvake legalisoidaksesi tietokoneen siirrettävän rekisterin
    • ohjeen
    • Päivitä GCC tuottaa Tag_ABI_HardFP_use viimeisimmästä EABI-dokumentista
    • Live korkea -rekisteriä ei tallenneta toiminto-prologiin -Os
    • - var-info-polku-lauseke epäonnistuu sisäkkäisissä osissa

    Uutta versiossa 4.9:

    • .org / Bugzilla / show_bug.cgi? id = 15302
    • GDB päivitetään 7.6: ään paremmin tukemaan kääpiö-3: n ja uudempia standardeja https://answers.launchpad.net/gcc-arm-embedded/+question/234131 https://bugs.launchpad.net/gcc-arm -Embedded / + bug / 1248981
    • ICE, kun käytetään korkeaa rekisteriä PIC-perusrekisteriä peukalo-1-tavoite

    • Uutta versiossa 4.7 Päivitys 3:

      • : //answers.launchpad.net/gcc-arm-embedded/+question/235582
      • Liitä linkkikoodisymbolilla määritetty haara osoitteeseen https://sourceware.org/bugzilla/show_bug.cgi?id=15302
      • Windows isännöi gdb-jumia jossakin määrin. https://bugs.launchpad.net/gcc-arm-embedded/+bug/1197615
      • Nano puuttuu viittaus _mallopt_r https://mbed.org/forum/mbed/topic/2701/?page=3#comment-22549

      Uutta version 4.7 päivityksessä 2:

      • Päivitä doc / *. texi uusimpaan texinfo-pakettiin https: // answers.launchpad.net/gcc-arm-embedded/+question/227685
      • Korjaa ICE-toiminnolla -mtune -vaihtoehto https://answers.launchpad.net/gcc-arm-embedded/+question/227667
      • Fix --debug -vaihtoehto rakennussivustossa https://answers.launchpad.net/gcc-arm-embedded/+question/229127
      • Korjaa tarpeettomat lr-tallennukset thumb1-lehtitoiminnolla

        • Tämä päivitysversio korjaa muutaman ongelman, joka löytyy osoitteesta

          4.7 major:

        • Mac OS -palvelinversio on python-riippuvuus
        • LTO-vika, kun se on asennettu hakemistoon, jossa on tilaa polun nimessä. http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50293
        • Lataa tiedot, jotka sisältävät kohdistettuja tietoja sisältäviä tietoja. http://sourceware.org/bugzilla/show_bug.cgi?id=15222
        • libnosys ei tarkista pinon ylivuotoa https://answers.launchpad.net/gcc-arm-embedded/+question/218972
        • librdimon.a ei vastaa newlib-nano
        • Se saa myös rakennekokoonpanon, joka sopeutetaan:
        • Basic Cortex-profiili multilib
        • LTO (Link Time Optimization)

Vastaavia ohjelmistoja

pkg-config
pkg-config

18 Feb 15

Flexc++
Flexc++

14 Apr 15

Magic C++
Magic C++

3 Jun 15

Mozart
Mozart

3 Jun 15

Kommentit GCC ARM Embedded

Kommentteja ei löytynyt
Lisää kommentti
Ota kuvia!