A tọhapụrụ GCC 11.1, ndị a bụ akụkọ kachasị mkpa ya na mgbanwe ya

Mgbe otu afọ nke mmepe, mbipụta ọhụrụ nke GCC compiler Suite 11.1 wepụtara, nnwere onwe izizi pụtara ọhụrụ na ngalaba GCC 11.x ọhụrụ. N'okpuru atụmatụ atụmatụ ọnụọgụ ọhụrụ, ejiri ụdị 11.0 mee ihe n'oge mmepe, na obere oge tupu ntọhapụ nke GCC 11.1, otu ngalaba nke GCC 12.0 ka agbanyelarị iji mepụta ụdị isi nke GCC 12.1 ọzọ.

GCC 11.1 kwụpụrụ maka ntụgharị gaa na ndabara faịlụ ndabara usoro DWARF 5, ndabara ntinye nke ọkọlọtọ C ++ 17 ("-std = gnu ++ 17"), mmụba dị ukwuu na ndakọrịta na ọkọlọtọ C ++ 20, nkwado nnwale maka C ++ 23, ndozi metụtara ọkọlọtọ ọdịnihu asụsụ C (C2x), njikarịcha arụmọrụ ọhụụ.

GCC 11.1 Main New Akụkụ

A gbanwere ọnọdụ ndabara maka asụsụ C ++ iji jiri ọkọlọtọ C ++ 17, kama nke ekwuru na C ++ 14. Enwere ike iji aka họrọ gbanyụọ omume C ++ 17 ọhụrụ mgbe ị na-arụ ọrụ ndebiri nke na-eji ndebiri ndị ọzọ dị ka oke (-fno-new-ttp-matching).

Agbakwunyere nkwado maka ngwaike ngwaike nke ngwá ọrụ AddressSanitizer, nke na-enye gị ohere ịchọpụta eziokwu nke ịnweta ebe nchekwa nwere onwe, gafere oke nke nchekwa echepụtara, yana ụfọdụ ụdị njehie ndị ọzọ mgbe ị na-arụ ọrụ na ebe nchekwa. Ngwanrọ ngwanrọ dị ugbu a maka ụlọ ọrụ AArch64 ma lekwasị anya na ojiji ya mgbe ị na-achịkọta kernel Linux.

Ihe ohuru ohuru nke eweputara bu njikarịcha na mmelite dị n'etiti usoro, dị ka agbakwunyere ọhụụ ọhụrụ IPA-modref (-fipa-modref) iji soro mmetụta ndị dị na ọrụ na-arụ ọrụ ma melite nyocha nyocha. E wezụga na a mmeziwanye ntinye nke IPA-ICF gafere (-fipa-icf), nke na - ebelata ichikota ncheta mkpokọta ma mee ka ọnụọgụ nke ọrụ jikọtara ọnụ maka otu njikọta nke koodu jikọtara ọnụ.

El Njirimara njikarịcha profaịlụ (PGO), mma "-fprofile-values" ọnọdụ site na-esochi nke ndị ọzọ kwa maka anọ na oku.

Ọzọkwa A gara n'ihu na mmejuputa usoro OpenMP 5.0 (Mepee Multi-Processing), n'ime ya gbakwunye nkwado mbụ maka ntuziaka ọrụ na ikike iji loops na-abụghị nke edo na OpenMP na-ewuli. OMP_TARGET_OFFLOAD agbanwe gburugburu ka akwadoro.

Mmezu nke nkọwapụta mmemme yiri nke OpenACC 2.6 enyere maka asụsụ C, C ++ na asụsụ Fortran, nke na-akọwapụta ngwaọrụ maka ịbupụ ọrụ na GPUs yana ndị nrụpụta ọkachamara dịka NVIDIA PTX.

Maka asụsụ nke ezinụlọ C, etinyere akara ọhụrụ "no_stack_protector", Ezubere iji gosi akara ọrụ nke nchekwa nchekwa agaghị agbanye ("-fstack-protector"). Emeela njirimara "malloc" na nkwado maka ịchọpụta oku abụọ iji kenye na ebe nchekwa n'efu, nke a na-eji na static parser iji chọpụta ahụkarị na ebe nchekwa njehie (ebe nchekwa nta, ojiji mgbe free, oku abụọ ka free ọrụ, wdg) na compiler ịdọ aka ná ntị "-Wmismatched-dealloc", "-Wmismatched- ọhụrụ-hichapụ" na " -Wfree-nonheap-object "akuko nkwekorita nke nkwekorita na oru ndi mmadu.

Mgbe ị na-ewepụta ozi debugging, a na-eji usoro DWARF 5 eme ihe na ndabara, nke, ma e jiri ya tụnyere nsụgharị ndị gara aga, na-enye ohere ọgbọ nke data debugging bụ 25% karịa kọmpat. Nkwado zuru ezu DWARF 5 chọrọ ọnụọgụ ma ọ dịkarịa ala mbipute 2.35.2.

Ike readdị arụmọrụ Sanitizer bara uru (-fsanitize = eri), ebe obu eee na-agbakwunye nkwado maka oge mmegharị na gburugburu, yana nkwado maka ngwa nbipu nke Kernel Concurrency Sanitizer (KCSAN) iji chọpụta ọnọdụ agbụrụ n'ime Linux kernel. A gbakwunyela nhọrọ ọhụrụ "–param tsan-ịmata-ọdịiche-na-agbanwe agbanwe" na "–param tsan-instrument-func-entry-exit".

Onye vectorizer ahụ na-enye nkọwa banyere ọdịnaya niile nke ọrụ ahụ yana nhazi ọzọ nke ikike ndị metụtara njikọta na ntụaka aka na ngalaba ndị gara aga na njikwa akara njikwa (CFG).

Ihe njikarịcha nwere ikike iji gbanwee usoro ọrụ nke ọnọdụ ka ọ bụrụ mgbanwe mgbanwe, nke a na-atụle otu mgbanwe ahụ. N'ọdịnihu, enwere ike itinye ederede mgbanwe site na iji ntuziaka ule bit (iji chịkwaa ntụgharị a, agbakwunyela nhọrọ "-fbit-tests").

Maka C ++, etinyego akụkụ nke mgbanwe na ihe ọhụrụ emere n'ụkpụrụ C ++ 20, gụnyere ọrụ ndị mebere "consteval virtual", ndị na-ebibi ihe maka ịkwụsị usoro ndụ nke ihe, na-eji klaasị enum na ịgbakọ nha nke otu usoro na okwu "ohuru".

Ọ bụrụ na ị chọrọ ịmatakwu banyere ya, you nwere ike ịlele nkọwa na njikọ na-esonụ. 


Ọdịnaya nke isiokwu agbaso ụkpụrụ anyị nke ụkpụrụ nduzi. Kpesa mmejọ pịa ebe a.

Bụrụ onye mbụ ịza ajụjụ

Hapu okwu gi

Adreesị email gị agaghị bipụtara. Chọrọ ubi na-akara na *

*

*

  1. Rụ ọrụ maka data: Miguel Ángel Gatón
  2. Nzube nke data: Nchịkwa SPAM, njikwa okwu.
  3. Ikike: Nkwenye gị
  4. Nkwurịta okwu nke data: Agaghị agwa ndị ọzọ data ahụ ma ọ bụghị site na iwu.
  5. Nchekwa data: Ebe nchekwa data nke Occentus Networks (EU) kwadoro
  6. Ikike: Oge obula inwere ike igbachi, weghachite ma hichapụ ihe omuma gi.