GCC 9.1


GCC 9.1

Di 3ê Gulanê de, yekem serbestberdana giştî ya guhertoya nehemîn a GCC pêk hat: GCC 9.1.
Ew li gorî ya heştemîn gelek çêtirkirin û zêdekirinên girîng dihewîne
awa.

Guherandinên gelemperî

Vebijarkên
  • Fermanên ku mezinahiyê qebûl dikin naha nirx û paşgirên 64-bit piştgirî dikin da ku mezinahiyê diyar bikin;
  • Vebijêrkek zêde kir -live-patching, ji bo kontrolkirina optimîzasyonên ku potansiyel wêranker in ji bo dînamîk, veguheztina kodê;
  • Vebijarka --temamkirinê hate zêdekirin da ku di pelika fermanê de temamkirina otomatîkî piştgirî bike;
  • Teşhîskirina berhevkar nuha jimareyên rêzê vedihewîne (-fno-diagnostics-show-line-hejmar) û
    agahî binivîsin (fno-diagnostics-show-labels);
  • Vebijêrkek zêde kir -fdiagnostics-format=json ji bo deranîna tespîtkirina di formata JSON;
  • Vebijarkên ji bo diyarkirina hevbendiyê (-falign-fonksiyonên, wek nimûne) naha dikare çend vebijarkên lihevkirinê qebûl bike;
  • Vebijarkên ji bo fîlterkirina navnîşa pelan zêde kirin (-fprofile-filter-pel, -fprofile-exclude-files), ku ji hêla profîlek ve têne saz kirin;
  • AddressSanitizer naha hevrêziya tevlihevtir bikar tîne da ku gihîştinên nederbasdar ên guhêrbarên li ser stikê bigire;
  • Gelek pêşveçûnên hilberê -fopt-info;
  • Vebijêrkek zêde kir -fsave-optimîzasyon-qeyd ji bo tomarkirina rapora optimîzasyonê li pelek;
  • Vebijêrkek zêde kir -fipa-stack-alignment и -fipa-referans-navnîşan.
Taybetmendiyên nû yên çêkirî
Taybetmendiya nû
Din

Gelek çêtirkirinên hilberîna kodê yên têkildarî:

  • nifşkirina avahiyên veguherînê;
  • optimîzekirinên nav-procedural;
  • optîmîzekirin li ser bingeha agahdariya profîlê;
  • optimîzekirin di qonaxa civînê de (LTO);

Di heman demê de forma navxweyî ya gcov naha JSON e, û vebijarka nû ye --bikaranîna-germ-rengan rengdêrên xêzên kodê li ser bingeha çend caran têne bikar anîn vedihewîne.

Zimanan

Qalîteya û temamkirina pêkanîna OpenACC zimanên C, C++, û Fortran pêşveçûna xwe berdewam dikin.

zimanên wek C
  • Piştgiriya qismî ji bo OpenMP 5.0 hate pêkanîn;
  • Taybetmendiya zêdekirî __builtin_convertvector;
  • Hişyarî zêde kir -Waddress-of-packed-endam;
  • Pêşketinên ji bo hejmarek hişyariyên heyî;
  • Nivîsa xeletiyê dema ku hejmarek xelet a argumanan ji makroyekê re derbas dike, naha ragihandina makroyê bixwe jî dihewîne;
  • Pêşniyarên rastkirina tîpan çêtir kirin.
C
  • Piştgiriya _Static_assert bi yek argumana -std=c2x (standard C ya pêşerojê);
  • Hişyariya nû -Nirxeya bêbext, ku ji bo fonksiyonên wekî abs() tîpa argumana çewt digire.
C ++
  • Hişyariyên nû: -Wêdeprecated-kopî,
    -Winit-list-lifetime,
    -Wredundant-tevger,
    -Wpessimizing-tevger,
    -Wclass-guhertin;
  • Ji bo pêkanîna taybetmendiyên nû yên ji standarda pêşerojê xebat tê meşandin C++2a;
  • Pêşîn naha agahdariya rasttir di derheqê hejmarek hêmanên koda çavkaniyê de hilîne, ku dihêle hûn di tespîtkirinê de agahdariya berfirehtir nîşan bidin;
  • Ji bo fonksiyonên zêde barkirî, operatorên binary, bangên fonksiyonê û rêzikên formatê tespîtkirina çêtir kirin;
  • Serrastkirinên otomatîkî yên ku ji hêla hin hawîrdorên pêşkeftinê ve têne piştgirî kirin ji bo hejmarek xeletiyên populer (parantez winda ne, cîhên navan, xeletî, hwd.) zêde kirin.
libstdc++
  • Pêkanîna C++17 êdî ne ezmûnî ye;
  • Algorîtmayên paralel lê zêde kirin, , , A êdî hewce nake -lstdc++fs;
  • Piştgiriya ezmûnî ya çêtir ji bo C++2a ( , , std::bind_front, hwd.);
  • Piştgiriya vekirina pelên pelan li ser Windows-ê ku rêyên wan tîpên ne-char hene;
  • Piştgiriya destpêkê li ser Windows;
  • Piştgiriya destpêkê ji bo Networking TS.
D

Guhertoya zimanê D 2.076 di nav GCC de ye.

Fortran
  • Piştgiriya tevahî ji bo I/O asynchronous;
  • Ji bo MINLOC û MAXLOC argûmana PAŞÊ pêk anîn;
  • Fonksiyonên FINDLOC û IS_CONTIGOUS pêkanîn;
  • Hevoksaziya ji bo gihîştina pêkhateyên jimareyên tevlihev hatiye pêkanîn: c%re û c%im;
  • Hevoksaziya str%len û a% kind;
  • Descriptors C û sernavê ISO_Fortran_binding.h bicîh kirin;
  • Dema ku yek ji argumanan NaN e, ji bo encamên fonksiyonên MAX û MIN-ê hewcedariyên aram;
  • Vebijêrkek zêde kir -fdec-tevlî;
  • Derhêner zêde kirin BUILTIN.
libgccjit

Din

Gelek guhertinên mîmarî- û OS-taybetî.

Source: linux.org.ru

Add a comment