Ang bagong bersyon 9.1 ng tagatala ng GCC ay pinakawalan na

gcc-compiler-9.1

Ang bagong bersyon ng tagatala ng GCC ginawang magagamit ilang araw na ang nakakaraan na may mga bagong tampok at pag-aayos ng bug.

Ayon sa koponan ng proyekto ng GNU GCC, ang bagong bersyon na ito, ang bersyon 9.1 ay isang pangunahing bersyon ng tagatala Naglalaman ng mahahalagang bagong tampok na hindi magagamit sa GCC 8.x o mga naunang bersyon. Dapat magdala ang GCC 9.1 ng mga bagong tampok sa wika, mga bagong pag-optimize at ilang pagpapahusay sa pagganap ng software.

Tungkol sa GCC

GCC ay isang koleksyon ng tagatala nilikha ng proyekto ng GNU. Ito ay mas eksaktong isang libreng software may kakayahang pag-ipon ng iba't ibang mga wika sa pagprograma, kasama ang C, C ++, Objective-C, Java, Ada, at Fortran.

Dapat ding pansinin na ginamit para sa pagbuo ng pinaka libreng software. Ang pinakabagong pangunahing paglabas ng compiler ay nagsimula noong Mayo 2018, bersyon 8.1.

Si Jakub Jelinek, isang developer ng Red Hat, ay nagpaliwanag na ang GCC 8.1 ay kumakatawan sa isang pangunahing paglabas na nagdadala ng mahahalagang bagong tampok na hindi magagamit sa GCC 7.x at mga naunang bersyon ng GCC.

Sa puntong ito, ang C ++ na front-end ay nagbigay ng pang-eksperimentong suporta para sa ilang mga pagpapaandar ng C ++ 2a na may mga pagpipilian na -std = c ++ 2a at -std = gnu ++ 2a.

Sa bersyon 8.2 sa pangkalahatang antas ng pagpapahusay, ang mga isyu sa pagganap ng LTO (Link Time Optimization) dahil sa isang overflow sa pagkahati algorithm habang ang paglikha ng malalaking mga binary file ay naayos na.

Ang mga pag-aayos ay nagpatuloy sa 8.x branch na may paglabas ng bersyon ng tagatala 8.3 noong Pebrero. Ang paglabas na ito ay isang paglabas ng bugfix na naglalaman ng mga patch para sa mga pag-urong sa GCC 8.2 kumpara sa naunang paglabas ng GCC. Ang koponan ng GCC ay naglunsad ng isang bagong sangay noong Mayo 3, na naglalabas ng bersyon 9.

Ano ang bago sa GCC 9.1?

Sa bersyon na ito, Ang suporta ng C ++ 17 na ipinakilala mula nang ang bersyon ng compiler 8.1 ay hindi na nakaranasl. Samakatuwid, ang suporta para sa C ++ 17 ay matatag na ngayon.

Ang interface ng Ipinapatupad ng C ++ ang buong wika ng C ++ 17 at suporta para sa standard na library ng C ++ ay malapit nang matapos.

El ang front-end at C ++ library ay mayroon ding maraming iba pang mga tampok na naka-code mula sa C ++ 2a. Gayundin, ang GCC ay may isang bagong interface para sa D na wika at ngayon ay bahagyang sumusuporta sa OpenMP 5.0 at halos ganap na isinasama ang suporta para sa OpenACC 2.5.

Para sa marami, ang GCC 9 ay isang malakas na bersyon ng tagatala na nagbibigay ng mahusay na mga tampok at pagpapahusay upang mapabuti ang pagganap ng developer.

Kabilang sa maraming mga bagong tampok sa GCC 9.1 ay ang:

  • Suporta para sa isang suporta para sa pag-iipon ng code na nakasulat sa D na programa ng wika;
  • Ang isang bagong backend ng AMD GCN GPU ay naidagdag sa GCC. Ang pagpapatupad ay kasalukuyang limitado sa pag-iipon ng solong mga sinulid na programa.
  • Pinapagana ngayon ang LRA bilang default para sa target na ARC. Maaari itong makontrol ng -mlra.
  • Nagdagdag ng suporta para sa image code at mga pahayag ng density ng branch at index.
  • Naidagdag sa GCC ay ang pagdaragdag ng isang bagong back-end na pag-target sa mga C-SKY V2 na processor.
  • Ang suporta ng Intel MPX ay tinanggal.
  • Ang isang bagong backend ay naidagdag para sa suporta ng OpenRISC processor.
  • Ang suporta para sa detalye ng OpenACC 2.5 ay halos kumpleto.
  • Gumagawa na ang internal na "selftest" na pakete ng GCC para sa C ++ at C (sa mga bersyon ng pag-debug ng tagatala).
  • Ang suporta ng Fortran sa GCC ay napabuti din. Ngayon humahawak ito ng asynchronous I / O at iba pang mga tampok.
  • Mga pag-optimize sa Interprocedure (OPI), mga pag-optimize na batay sa profile, pag-optimize ng oras sa pag-link (LTO), pati na rin maraming iba pang mga pag-optimize upang matiyak ang mas mahusay na kalidad ng code.
  • Ang kabuuang oras ng pag-ipon para sa Firefox 66 at LibreOffice 6.2.3 sa isang 8-core machine ay nabawasan ng humigit-kumulang 5% kumpara sa GCC 8.3. Ang laki ng mga file ng object ng LTO ay nabawasan ng 7%.
  • Ang oras ng pag-link ng LTO ay nagpapabuti ng 11% sa 8 pangunahing mga makina at nagbabago nang malaki para sa higit na mga parallel na kapaligiran sa pagbuo. Ang serial yugto ng pag-optimize ng oras ng pag-link ay 28% mas mabilis at gumugugol ng 20% ​​na mas kaunting memorya. Ang Parallel Stage ngayon ay naghahati ng 128 mga partisyon sa halip na 32 at binabawasan ang paggamit ng memorya para sa bawat gumagamit ng 30%.
  • Ang isang bagong pagpipilian na "-fdiagnostics-format = json" ay ipinakilala para sa mga diagnostic sa nababasa na format ng machine.

Fuente: https://gcc.gnu.org


Maging una sa komento

Iwanan ang iyong puna

Ang iyong email address ay hindi nai-publish. Mga kinakailangang patlang ay minarkahan ng *

*

*

  1. Responsable para sa data: Miguel Ángel Gatón
  2. Layunin ng data: Kontrolin ang SPAM, pamamahala ng komento.
  3. Legitimation: Ang iyong pahintulot
  4. Komunikasyon ng data: Ang data ay hindi maiparating sa mga third party maliban sa ligal na obligasyon.
  5. Imbakan ng data: Ang database na naka-host ng Occentus Networks (EU)
  6. Mga Karapatan: Sa anumang oras maaari mong limitahan, mabawi at tanggalin ang iyong impormasyon.