GCC 10.1 kompilatoren er her, og disse er de viktigste nyhetene

Etter et års utvikling utgivelsen av den nye versjonen ble publisert fra gratis settet GCC 10.1 kompilatorer, dette er den første viktige utgivelsen i den nye grenen av GCC 10.x.

I henhold til det nye versjonsnummereringsskjemaet ble versjon 10.0 brukt under utviklingsprosessen, og like før utgivelsen av GCC 10.1 var GCC 11.0-grenen allerede forgrenet, på grunnlag av hvilken neste versjon vil bli dannet. betydningen av GCC 11.1.

For de som ikke er kjent med GCC (GNU Compiler Collection), bør du vite at eDette er et sett med kompilatorer opprettet av GNU-prosjektet, er gratis programvare og distribueres av Free Software Foundation (FSF) under GPL-lisensen.

Disse kompilatorene brukes mye på de fleste Unix-systemer i en slik grad at de betraktes som en standard for Unix-operativsystemer og derivater av åpen kildekode og også proprietære, for eksempel Mac OS X.

GCC krever at applikasjonssett kjent som binutils for å utføre oppgaver som å identifisere objektfiler eller få størrelse for å kopiere, oversette eller lage lister, koble dem eller fjerne unødvendige symboler.

Hva er nytt i GCC 10.1

GCC 10.1 skiller seg ut for implementering av mange innovasjoner i C ++ språk utviklet for C ++ 20-standarden, forbedringer knyttet til den fremtidige C-språkstandarden (C2x), nye optimaliseringer i kompilator-backends og eksperimentell støtte for statisk analysemodus.

For språkene C, C ++ og Fortran er OpenACC 2.6 parallell programmeringsspesifikasjon implementert, som definerer nedlastingsverktøy på GPUer og spesialiserte prosessorer som NVIDIA PTX.

Implementeringen av standarden Åpne MP 5.0 (Open Multi-Processing), som definerer API og metoder for bruk av parallelle programmeringsmetoder i multi-core og hybrid-systemer (CPU + GPU / DSP) med delt minne og vektoriseringsenheter (SIMD), den er nesten ferdig.

Funksjoner legges til som betingede uttrykk lastprivate, scan and loop directives, order and use_device_addr uttrykk. For OpenMP og OpenACC, ble det lagt til støtte for nedlasting på XNUMX. og XNUMX. generasjon AMD Radeon GPUer.

For C-språk er "tilgang" -funksjonen lagt til for å beskrive tilgang til funksjonen til objekter som sendes via referanse eller peker og for å knytte disse objektene til heltallargumenter som inneholder informasjon om størrelsen på objektene.

For å jobbe sammen med "tilgang", blir "type" -attributtet implementert for å oppdage feil tilgang fra brukerfunksjoner, for eksempel når du skriver verdier til et område utenfor områdets grenser. Symver-attributtet er også lagt til for å koble tegn i ELF-filen til bestemte versjonsnumre.

For C ++ er omtrent 16 endringer og innovasjoner implementert utviklet i C ++ 20-standarden inkludert nøkkelordet "constinit" lagt til og implementert støtte for utvidelse av maler «konsept»Som lar deg definere et sett med krav til malparametere, som under kompilering begrenser settet med argumenter som kan tas som malparametere.

Lengre forbedrede interprosedural optimaliseringer er uthevet, IPA-SRA er redesignet for å fungere under binding og fjerner nå blant annet ubrukt beregnede og returnerte verdier.

I "-O2" optimaliseringsmodus er alternativet "-finline-funksjoner" aktivert, som er omkonfigurert for mer kompakt kode enn for ytelse.

De forbedret lenkeoptimalisering (LTO), sog la til en ny kjørbar fil lto-dump for å dumpe informasjon på LTO byte-kodede objektfiler. I LTO parallelle passeringer er det mulig å automatisk bestemme antall samtidige utførelsesoppgaver, og hvis dette ikke kan bestemmes, bruk informasjon om antall CPU-kjerner som en parallelliseringsfaktor.

Optimaliseringsmekanismen ble forbedret og er basert på resultatene av kodeprofilering (PGO), som genererer en mer optimal kode basert på en analyse av egenskapene til kodeutførelse.

Hvis du vil vite mer om det, du kan sjekke detaljene i denne utgivelsen I den følgende lenken. 


Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.