Tämä uusi versio GCC-kääntäjästä julkaistiin muutama päivä sitten uusilla ominaisuuksilla ja virhekorjauksilla.
GNU GCC -projektitiimin mukaan tämä uusi versio, versio 9.1 on tärkeä kääntäjäversio Sisältää tärkeitä uusia ominaisuuksia, joita ei ole saatavana GCC 8.x: ssä tai aiemmissa versioissa. GCC 9.1: n pitäisi tuoda uusia kieliominaisuuksia, uusia optimointeja ja joitain suorituskyvyn parannuksia ohjelmistoon.
Tietoja GCC: stä
GCC on kääntäjäkokoelma luoma GNU-projekti. Se on tarkemmin ilmainen ohjelmisto pystyy kokoamaan erilaisia ohjelmointikieliä, mukaan lukien C, C ++, Objective-C, Java, Ada ja Fortran.
On myös huomattava, että käytetään useimpien ilmaisten ohjelmistojen kehittämiseen. Viimeisin suuri kääntäjän julkaisu on peräisin toukokuussa 2018, versio 8.1.
Red Hat -kehittäjä Jakub Jelinek selitti, että GCC 8.1 oli merkittävä julkaisu, joka toi tärkeitä uusia ominaisuuksia, joita ei ole saatavilla GCC 7.x: ssä ja GCC: n aiemmissa versioissa.
Tässä vaiheessa C ++ - käyttöliittymä on tarjonnut kokeellista tukea joillekin C ++ 2a -toiminnoille vaihtoehdoilla -std = c ++ 2a ja -std = gnu ++ 2a.
Versiossa 8.2 yleisellä parannustasolla on korjattu LTO (Link Time Optimization) -suorituskykyongelmat, jotka johtuvat osioalgoritmin ylivuotosta suurten binääritiedostojen luomisen aikana.
Korjauksia jatkettiin 8.x-haarassa julkaisemalla kääntäjäversio 8.3 viime helmikuussa. Tämä julkaisu oli virhekorjausjulkaisu, joka sisälsi korjauksia GCC 8.2: n regressioihin verrattuna aiempiin GCC-versioihin. Persianlahden yhteistyöneuvoston tiimi aloitti uuden haaratoimiston 3. toukokuuta ja julkaisi version 9.
Mitä uutta GCC 9.1: ssä on?
Tässä versiossa C ++ 17 -tuki on otettu käyttöön, koska kääntäjän versiota 8.1 ei ole enää koettul. Siksi tuki C ++ 17: lle on nyt vakaa.
Käyttöliittymä C ++ toteuttaa C ++ 17: n koko kielen ja tuki C ++ - standardikirjastolle on valmistumassa.
El käyttöliittymässä ja C ++ -kirjastossa on myös monia muita ominaisuuksia, jotka on koodattu C ++ 2a: sta. Lisäksi GCC: llä on uusi käyttöliittymä D-kielelle, ja se tukee nyt osittain OpenMP 5.0: ta ja integroi melkein kokonaan OpenACC 2.5: n tuen.
Monille GCC 9 on kääntäjän vahva versio, joka tarjoaa erinomaisia ominaisuuksia ja parannuksia kehittäjien suorituskyvyn parantamiseksi.
GCC 9.1: n monien uusien ominaisuuksien joukossa ovat:
- Tuki ohjelmointikielellä D kirjoitetun koodin kääntämiseen;
- Uusi AMD GCN -näytönohjain on lisätty GCC: hen. Toteutus rajoittuu tällä hetkellä yksisäikeisten ohjelmien kokoamiseen.
- LRA on nyt oletuksena käytössä ARC-kohteelle. Tätä voidaan hallita -mlra.
- Lisätty tuki kuvakoodille sekä haara- ja hakemistotiheyslausekkeille.
- GCC: hen lisättiin uusi taustakohdistus C-SKY V2 -prosessoreihin.
- Intel MPX -tuki on poistettu.
- Uusi backend on lisätty OpenRISC-prosessoritukeen.
- Tuki OpenACC 2.5 -määritykselle on melkein täydellinen.
- GCC: n sisäinen "selftest" -paketti toimii nyt C ++: lle ja C: lle (kääntäjän debug-versioissa).
- Myös Fortranin tukea GCC: ssä on parannettu. Se käsittelee nyt asynkronista I / O: ta ja muita ominaisuuksia.
- Prosessien väliset optimoinnit (OPI), profiilipohjaiset optimoinnit, linkitysajan optimoinnit (LTO) sekä monet muut optimoinnit koodin paremman laadun varmistamiseksi.
- Firefox 66: n ja LibreOffice 6.2.3: n koko kääntöaika 8-ytimisessä koneessa on lyhentynyt noin 5% verrattuna GCC 8.3: een. LTO-objektitiedostojen kokoa pienennetään 7%.
- LTO-yhteysaika paranee 11% kahdeksalla ytimen koneella ja kehittyy dramaattisesti rinnakkaisemmissa rakennusympäristöissä. Linkkiajan optimoinnin sarjavaihe on 8% nopeampi ja kuluttaa 28% vähemmän muistia. Parallel Stage osioi nyt 20 osiota 128 sijasta ja vähentää käyttäjän muistin käyttöä 32%.
- Uusi vaihtoehto "-fdiagnostics-format = json" on otettu käyttöön koneellisesti luettavassa diagnoosissa.
lähde: https://gcc.gnu.org