LLVM 17.0 yakatoburitswa uye idzi ndidzo nhau dzayo

Nhoroondo ye LLVM

LLVM igadziriro yekugadzira ma compilers pamwe nekubatsira kuvaka mitauro mitsva yekuronga uye kugadzirisa mitauro iripo.

Mushure memwedzi mitanhatu yekukura Iyo itsva vhezheni yeLLVM 17.0 yaunzwa, umo kuvandudzwa kwakasiyana, shanduko, gadziriso dzebug uye, pamusoro pezvose, akasiyana akakosha maficha akaiswa muClang 17.0.

Kune avo vasina kujairana neLLVM, iwe unofanirwa kuziva kuti izvi ndeye GCC inoenderana compiler (macompilers, optimizers, uye macode generator) anounganidza zvirongwa kuita RISC-senge virtual instruction intermediate bitcode (yakaderera-level virtual muchina ine multilevel optimization system).

Iyo pseudocode inogadzirwa inogona kushandurwa neJIT compiler kuita mirairo yemuchina panguva yekuitwa kwechirongwa.

Makuru matsva maficha eLLVM 17.0

Muiyi vhezheni itsva yeLLVM 17.0 inounzwa, pane akasiyana siyana akakodzera ekufunga nezvawo, ayo ari, semuenzaniso, kuvandudzwa kune X86 backend, zvakanaka akawedzerao rutsigiro rwekuwedzera murayiridzo set architecture ISA SHA512, ISA SM3, ISA SM4 uye ISA AVX-VNNI-INT16.

Pamusoro peizvi, zvakare inosimbisa iyo kugadzirisa mu backend kugona kwezvivakwa RISC-V izvo zvakawedzera zvakanyanya, kubvira yakawedzera rutsigiro rweiyo sifive-x280 processor.

Imwe shanduko yatinogona kuwana ndeye Yakaiswa rutsigiro rwe XTH processor ekuwedzera*, pamwe nekuenderana nekuwedzera LSX, LASX, LVZ uye LBT ISA kuseri kweiyo LoongArch architecture.

Yakavandudzwa backends yeAArch64, ARM, WebAssembly, MIPS, PowerPC, AMDGPU zvivakwa, yakawedzera LLD linker kugona, uye yakawedzera mutsva "register info" kuraira kuLLDB debugger kuratidza ruzivo rwese rwunozivikanwa nezve rekodhi.

Nezve kuvandudzwa kweClang 17.0, zvinoratidzwa kuti maficha anotsanangurwa mune ramangwana C-standard C2x senge bool, static_assert, aligns, alignof uye thread_local keywords akaitwa, pamwe nekugona kudoma isina chinhu masikweya mabhureki «{ }» yekutanga kusvika ku zero values.

The codeo C inopa kugona kutumira "goto" kutaura mukati me "asm" inovhara kuburikidza nema tag akasarudzwa zvisina kunanga, rutsigiro rwakawedzerwa kune C yekuwedzera iyo inobvumira kushandisa mhando pachinzvimbo chekutaura seyokutanga operand mu "_Generic", mukuwedzera kukubvumira kunogara kutaurwa mumutauro C kushandisa zvimiro, mibatanidzwa. uye arrays akaziviswa ne "const" hunhu.

Nezve kuvandudzwa kwakabatana neiyo C ++ 20 standard, inotaurwa kuti ikozvino Pamapuratifomu ese kunze kweWindows, kune rutsigiro ruzere rweCoroutines, Pamusoro pezvo, zvimwe zvinodikanwa zvekugara uchienzanisa maratidziro akaitwa.

Inosimbiswawo kuti ikozvinoKurongeka kwakaringana kwematemplate e lambda kunovimbiswa inotsanangurwa pakarepo mushure meiyo template ma paramita uye ine inosiyana ine inotsamira mhando mubhuroka. Yakachengetera kushandiswa kwekaviri underscores muuser literals uye yakarambidza kushandiswa kwe "operator" keyword mutsananguro yebasa ine zvakachengetwa zviziviso muzita.

Kana ari kuvandudzwa kunofanirwa kuitwa kune chekuita neC ++ 23 standard , inotaurwa kuti iri padanho rekupedzisira rekubvumidzwa neISO, kubvira yakachinja chiyero chekupedzisira chekudzoka mhando mu lambda mabasa kutarisa zvikorekedzo kutanga uye ipapo zvinyorwa zvakakomberedza.

Of the dzimwe shanduko izvo zvinomira pachena:

  • Yakawedzera kugona kutsanangura multidimensional arrays uchishandisa
  • Kana uchigadzira C ++ zvikumbiro uchishandisa "-O0" optimization modhi, kodhi yekugadzira mafoni yakagadziridzwa.
  • Yakawedzera tsigiro yeNO_COLOR nharaunda inoshanduka kudzima ruvara rwekubuda.
  • Kuongorora kwakasimba uye maturusi ekuongorora akawedzera zvakanyanya, semuenzaniso, nyowani yakasainwa yakazara yakazara macheki, lambda template kururamisa, constexpr mataurirwo, null pointer kuenzanisa, kushandiswa kweuninitialized zvimiro, nezvimwe zvakawedzerwa.
  • Libc ++ raibhurari inoenderera mberi nekushandisa tsigiro yekugona kweiyo C++20 uye C++23 zviyero, uye basa ratangawo kupa rutsigiro rweiyo C++26 yakatarwa.
  • Yakawedzera tsigiro yeshoko rekuti "inoda cplusplus23" mune tsananguro dzekubatana pakati pemusoro mafaera nemamodule.

Chekupedzisira, kana iwe uchida kukwanisa kuziva zvakawanda nezvazvo, unogona kubvunza iwo ruzivo mu inotevera chinongedzo.


Siya yako yekutaura

Your kero e havazobvumirwi ichibudiswa. Raida minda anozivikanwa ne *

*

*

  1. Inotarisira data: AB Internet Networks 2008 SL
  2. Chinangwa cheiyo data: Kudzora SPAM, manejimendi manejimendi.
  3. Legitimation: Kubvuma kwako
  4. Kutaurirana kwedata
  5. Dhata yekuchengetedza: Dhatabhesi inobatwa neOccentus Networks (EU)
  6. Kodzero: Panguva ipi neipi iwe unogona kudzora, kupora uye kudzima ruzivo rwako